bsr*_*bsr 23 javascript underscore.js
根据这里的教程,
集合可以是数组或对象,也可以是JavaScript中的关联数组
这是否意味着所有的功能collection同样适用于对象文字.例如,我想根据条件选择值.说,
var obj = {
"1": {id: 1, val: 2},
"2": {id: 2, val: 5},
"3": {id: 3, val: 8},
"4": {id: 4, val: 1}
}
Run Code Online (Sandbox Code Playgroud)
我想找到val字段的最大值和最小值.看看API,我想pluck用来获取一个数组val,然后做min和max.
谢谢.
Ber*_*rgi 56
这是否意味着收集下的所有函数同样适用于对象文字?
是的.
我可以将pluck应用于对象(因为api示例显示在对象数组中使用)
你试过吗?是的,你可以,但你会得到一个阵列.
有没有更好的办法?
Math.min.apply(null, _.pluck(obj, "val"))(或_.min(_.pluck(obj, "val")))获得最低价值是好的.但是,如果你想获得整个对象(带有id),你也可以使用min/max iterator参数:
var lowest = _.min(obj, function(o){return o.val;});
Run Code Online (Sandbox Code Playgroud)