我有模型的主干集合,并希望检索某个属性的不同值
如果我将以下数据加载到我的收藏中:
[{brand:'audi',id:'1234'},
{brand:'audi',id:'3456'},
{brand:'bmw',id:'3456'}]
我现在想从该系列中获得不同的品牌。结果应该是:
['audi','bmw']
查看Backbone和Underscore API我没有看到任何明显的事实。 我目前的做法是使用像jslinq
这样的库我是否遗漏了明显的事情,或者有人比jslinq有更好的建议?
答案 0 :(得分:16)
您可以使用pluck,然后使用uniq(例如:http://jsfiddle.net/sCVyN/5/)
啃削
可能是最常见的用例的便捷版本 map:提取属性值列表。
uniq的
使用
===
进行测试,生成无重复版本的数组 对象平等。如果您事先知道阵列已排序, 为isSorted传递true将运行更快的算法。如果你 想要根据转换计算唯一的项目,传递一个 迭代器功能。