在我看来, Backbone.js 集合既有长度属性,又有返回相同结果的大小函数是多余的。这有什么原因吗?
rseugnpd1#
一个是特定 Backbone.js 集合的大小(length属性),另一个是下划线库的一个方法,它可以返回ANY集合的大小=特别适用于数组、列表和它可能支持的任何其他内容。之所以出现在这里是因为所有的方法都被混合到了一个Backbone集合中,这是库的一个方便之处。需要注意的是,这也是一个方法调用--而不是一个计算属性,所以从技术上讲,调用size而不是仅仅检查维护的长度也会更慢。为了通过Backbone本身坚持使用已记录的API,您最好只使用length
size
length
vd8tlhqk2#
length是一个属性,仅在数组类型中可用,而size是一个方法,在大多数数据结构对象(如Set、List等)中可用。
2条答案
按热度按时间rseugnpd1#
一个是特定 Backbone.js 集合的大小(length属性),另一个是下划线库的一个方法,它可以返回ANY集合的大小=特别适用于数组、列表和它可能支持的任何其他内容。
之所以出现在这里是因为所有的方法都被混合到了一个Backbone集合中,这是库的一个方便之处。需要注意的是,这也是一个方法调用--而不是一个计算属性,所以从技术上讲,调用
size
而不是仅仅检查维护的长度也会更慢。为了通过Backbone本身坚持使用已记录的API,您最好只使用
length
vd8tlhqk2#
length是一个属性,仅在数组类型中可用,而size是一个方法,在大多数数据结构对象(如Set、List等)中可用。