У меня есть два объекта массивов ниже. Я хочу найти все эти идентификаторы первого массива и сделать их активными во втором массиве объекта, а остальные должны стать нулевыми в свойствах статуса.
var searchIDs = [{ "id":"6001", "other" : "..." },
{ "id":"6002", "other" : "..."}]
var list = [
{"id":"9666", "status":"active"},
{"id":"9667", "status":"none"},
{"id":"9999", "status":"none"},
{"id":"9668", "status":"none"},
{"id":"9669", "status":"active"},
{"id":"6001", "status":"none"},
{"id":"6002", "status":"none"},
{"id":"6003", "status":"none"},
{"id":"6004", "status":"none"},
{"id":"6005", "status":"active"},
{"id":"6006", "status":"none"},
{"id":"6007", "status":"none"},
{"id":"6008", "status":"none"},
{"id":"6009", "status":"none"}
]
for (var i = 0 ; i < searchIDs.length ; i ++) {
list.find(v => v.id !== searchIDs[i].id).status = "none";
list.find(v => v.id === searchIDs[i].id).status = "active";
Array.prototype.push.apply(list);
}
console.log('Final List : ' + JSON.stringify(list));
Но когда я пытаюсь найти функцию с для циклов это пока не работает. Как я мог это решить? Благодарю за чтение моих вопросов! спасибо!
Окончательный результат должен быть
[
{"id":"9666", "status":"none"},
{"id":"9667", "status":"none"},
{"id":"9999", "status":"none"},
{"id":"9668", "status":"none"},
{"id":"9669", "status":"none"},
{"id":"6001", "status":"active"},
{"id":"6002", "status":"active"},
{"id":"6003", "status":"none"},
{"id":"6004", "status":"none"},
{"id":"6005", "status":"none"},
{"id":"6006", "status":"none"},
{"id":"6007", "status":"none"},
{"id":"6008", "status":"none"},
{"id":"6009", "status":"none"}
]