在 JSON 数组中查找对象并为其添加值

我有一个像这样的 JSON 数组:


[

  {

    id: 1,

    name: 'John'

  },

  {

    id: 2,

    name: 'Jack'

  },

  {

    id: 3,

    name: 'Peter'

  }

]

我想通过它找到一个对象id并添加一个deleted: true。


我想知道最简单的方法是什么。


呼唤远方
浏览 103回答 3
3回答

守候你守候我

您可以使用下面的通用函数,它需要您传递要更新的对象的数组和 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));

智慧大石

您可以使用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);

慕婉清6462132

试试这个: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并跳出循环。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript