在javascript列表上迭代并处理特定对象
我有一个对象的集合(列表),如下所示在javascript列表上迭代并处理特定对象,javascript,underscore.js,Javascript,Underscore.js,我有一个对象的集合(列表),如下所示 books{ book1[ isSelected = false; /*other properties*/ ], book2[ isSelected = true; /*other properties*/ ], book3[ isSelected = false; /*other properties*/ ] } 我想迭代此列表,并将所有具有属性isSelected的对象打印为true,然后将所有具
books{
book1[
isSelected = false;
/*other properties*/
],
book2[
isSelected = true;
/*other properties*/
],
book3[
isSelected = false;
/*other properties*/
]
}
我想迭代此列表,并将所有具有属性isSelected
的对象打印为true
,然后将所有具有属性isSelected
的对象打印为false
请在这个方法上指导我 vanilla JS中的一个简单解决方案是按属性对数组排序:
books.sort(function(a, b) {
return b.isSelected - a.isSelected
})
一种方法是:
r = _.groupBy(books, 'isSelected')
console.log(r[true]);
console.log(r[false]);