hen*_*dry 10 javascript json ember.js
我设计了邮箱的JSON表示,以便我可以轻松查找邮件,例如mailjson[UID].Body.
然而,在查看Angularjs和Ember,模板化MVC JS引擎之后,似乎JSON应该具有以下格式:
[{
"id": 1,
"body": "Blah blah blah..."
},
{
"id": 2,
"body": "More blah foo blah"
},
{
"id": 3,
"body": "Hopefully you understand this example"
}]
Run Code Online (Sandbox Code Playgroud)
然后有一些findAll(id)函数根据所需的id来获取项目,迭代JSON.所以现在我想知道我的JSON设计是否有价值?我做错了吗?为什么人们不使用我的JSON使用的字典查找设计?
任何其他提示,以确保我有一个良好的数据结构设计,我将不胜感激.
在JSON中存储大表的最佳实践是使用数组.
原因是当将JSON数组解析为内存数组时,构建映射没有速度损失.如果需要通过多个字段构建内存索引以便快速访问,则可以在加载期间或之后执行此操作.但是如果你像你一样存储JSON,你就没有选择在没有构建地图的情况下快速加载,因为JSON解析器总是必须根据你的结构构建那个巨大的id图.
将数据存储在内存中的结构不必(也不应该)与磁盘上的存储结构相同,因为无法序列化/反序列化内部JavaScript映射结构.如果可能,那么就像MS SQL Server存储表和索引一样序列化和存储索引.
但是如果您使用的框架强制您在内存和磁盘中具有相同的结构,那么我支持您在一个大对象中使用id作为键的选择,因为这样可以更容易地在服务器的JSON请求中传递id以执行任何操作使用电子邮件项目或更新它在UI中的状态,假设服务器和浏览器都在内存中保留了重要的电子邮件项目列表.
| 归档时间: |
|
| 查看次数: |
11614 次 |
| 最近记录: |