所以我正在尝试用下划线想一个更好的方法来做到这一点:
state.attributes = _.reduce(list, function(memo, item){
memo['neighborhood'] = (memo['neighborhood'] || []);
var isNew = true;
_.each(memo['neighborhood'], function(hood){
if (hood.name === item.data.neighborhood) {
hood.count++; isNew=false;
}
});
if(isNew){
memo['neighborhood'].push({name:item.data.neighborhood, count:1});
}
return memo;
});
我想将列表的各种名称组合成一个唯一名称列表,并计算每个唯一名称出现的次数。下划线似乎正是为了解决这种问题而设计的,但我能想到的最佳解决方案似乎不够优雅。