我使用下划线来计算对象长度。_.size(object)
. 因为这个对象是由 angularjs 处理的,所以$$hashKey
对象中有一个属性使长度 1 比它应该的大。在angularjs中计算对象长度的正确方法是什么?
问问题
9083 次
2 回答
9
这会吗?_.size(_.omit(object, '$$hashKey'));
更新
angular.copy()
为你脱衣$$hashKey
。所以看起来更 Angular 的方式是_.size(angular.copy(object));
.
于 2013-06-27T05:48:51.493 回答
0
怎么样_.size(angularObject) - 1;
?
如果这还不够,您当然可以创建自己的不计算大小的函数$$hashKey
:
_.extend(_, {
mySize: function(collection, ignored) {
var size = 0,
_.each(collection, function(value, key) {
if (!_.contains(ignored, key)) {
size++;
}
});
return size;
}
});
例子:
var len = _.mySize(angularObject, ['$$hashKey']);
于 2013-06-27T05:53:50.313 回答