我使用主干和下划线js + JQuery
我有一个对象集合,例如 Collection-A
[
{"id"="1" , "isReady"="false"},
{"id"="2" , "isReady"="false"},
{"id"="3" , "isReady"="false"},
{"id"="4" , "isReady"="false"}
]
我还有另一个集合,比如 Collection-B,[{"id"="2"}, {"id"="3"}]
在集合 A 中,如果对象的 id 存在于集合 B 中,我想将标志“isReady”的值更新为 true
最好的方法是什么?
最佳答案
试试这个
var a = [
{id: "1", isReady: "false"},
{id: "2", isReady: "false"},
{id: "3", isReady: "false"},
{id: "4", isReady: "false"}
];
var b = [{id: "2"}, {id: "3"}];
var ids = _.pluck(b, 'id');
_.each(a, function (el) {
if (_.indexOf(ids, el.id) >= 0) {
el.isReady = true;
}
});
console.log(a);
我已经更改了数据,因为在您的示例中您没有有效的 JS(在对象文字中您必须使用 :
而不是 =
)语法
关于javascript - 迭代 js 集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28373620/