3 回答

TA貢獻1802條經驗 獲得超10個贊
您可以使用下面的通用函數,它需要您傳遞要更新的對象的數組和 ID。
var arr = [
{
id: 1,
name: 'John'
},
{
id: 2,
name: 'Jack'
},
{
id: 3,
name: 'Peter'
}
];
function addProperty(data,id){
data.forEach(obj => {
if(obj.id === id){
obj['deleted'] = true;
}
});
return data;
}
let id = 1;
console.log(addProperty(arr, id));

TA貢獻1946條經驗 獲得超3個贊
您可以使用Array.prototype.find
這將是最簡單的方法
let users = [
{
id: 1,
name: 'John'
},
{
id: 2,
name: 'Jack'
},
{
id: 3,
name: 'Peter'
}
];
let id = 3;
let foundUser = users.find(user => user.id === id);
console.log('Users before modification', users);
foundUser.deleted = true;
console.log('Users after modification', users);

TA貢獻1804條經驗 獲得超2個贊
試試這個:
var array = [
{
id: 1,
name: 'John'
},
{
id: 2,
name: 'Jack'
},
{
id: 3,
name: 'Peter'
}
]
for (var item in array){
if (array[item].id === 1){
array[item].deleted = true;
break;
}
}
console.log(array)
它所做的是遍歷數組中的每個項目。然后它檢查相應的索引項是否具有我們要查找的值。如果是,它會添加一個true
名為的屬性deleted
并跳出循環。
添加回答
舉報