对于具有一对多关系的主干模型,存储“;许多“;数组中的模型,而不是Collection
For backbone models with one-to-many relationships, does it make a performance-difference to store the "many" models in array rather than Collection?
给定的模型用户和注释正在填充,这样用户可能会有很多注释。。。我有一个视图,我希望每个用户模型都知道它的注释,以便快速查找。但我不一定需要Collection的所有功能。
另一方面,由于我使用Collections来存储任何类型的模型组,为了一致性,我希望坚持使用Collections。
我的问题是:即使模型的集合没有事件绑定,也只保留模型的数组而不是模型的集合,这是否有任何显著的性能优势?
从网络角度来说,不,无论如何都可能会导致完全相同的JSON。
就CPU而言,我认为任何性能优势都将是极其微小的。加载集合时,它会遍历数组中的每个项,将元素转换为模型,绑定到所有模型事件,并将其添加到作为模型数组的models属性中。除非你的评论总数很高,否则你不会看到任何影响。看看它的出处吧,它可读性很强。
当然,了解实际性能影响的唯一方法是测试它;要加载到集合中的注释模型/集合和JSON。
相关文章:
- 使用knockout.js将数组绑定到视图模型
- 将js对象更改为使用嵌套的可观察数组敲除js视图模型
- 如何在ember数据模型中表示数组
- 在Backbone中对模型(数组)进行排序
- 主干输出用于集合模型的空数组
- 字符串映射的Extjs模型数组
- Angular2没有在模型数组中迭代
- Ember 数据模型数组并不总是有数据
- AngularJS 无法自定义验证模型数组值
- 如何在不破坏角度模型(数组)的情况下对其进行过滤
- 主干.js - 模型数组上的更改事件不会在元素更改时触发
- Backbone-JSON的模型数组
- 主干模型数组属性更改和更改事件侦听器不总是启动
- 如何创建对象的Mongoose模型数组
- 无法清除主干模型数组属性
- 如何将控制器's content属性设置为模型数组,而不需要相应的路由
- VueJS复选框模型数组的整数
- 主干:如何在添加模型数组时仅触发一次添加事件
- 筛选骨干集合将返回一个模型数组
- 如何将模型数组传递到jquery中