Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在JSON数组中查找一个对象并向其添加一个值_Javascript_Json_Vue.js - Fatal编程技术网

Javascript 在JSON数组中查找一个对象并向其添加一个值

Javascript 在JSON数组中查找一个对象并向其添加一个值,javascript,json,vue.js,Javascript,Json,Vue.js,我有一组JSON,如下所示: [ { id: 1, name: 'John' }, { id: 2, name: 'Jack' }, { id: 3, name: 'Peter' } ] 我想通过它的id找到一个对象,并添加一个deleted:true 我想知道最简单的方法是什么。您可以使用下面的通用函数,它需要您传递要更新的对象的数组和id var arr=[ { id:1, 名字:“约翰” }, { id:2, 名字

我有一组JSON,如下所示:

[
  {
    id: 1,
    name: 'John'
  },
  {
    id: 2,
    name: 'Jack'
  },
  {
    id: 3,
    name: 'Peter'
  }
]
我想通过它的id找到一个对象,并添加一个deleted:true


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

您可以使用下面的通用函数,它需要您传递要更新的对象的数组和id

var arr=[ { id:1, 名字:“约翰” }, { id:2, 名字:“杰克” }, { id:3, 名字:“彼得” } ]; 函数addPropertydata,id{ data.forEachobj=>{ ifobj.id==id{ obj['deleted']=true; } }; 返回数据; } 设id=1; console.logaddPropertyarr,id 你可以使用这将是最简单的方法

让用户=[ { id:1, 名字:“约翰” }, { id:2, 名字:“杰克” }, { id:3, 名字:“彼得” } ]; 设id=3; 让foundUser=users.finduser=>user.id==id; 控制台。记录“修改前的用户”,用户; foundUser.deleted=true; 控制台。记录“修改后的用户”,用户 试试这个: 变量数组=[ { id:1, 名字:“约翰” }, { id:2, 名字:“杰克” }, { id:3, 名字:“彼得” } ] 对于数组中的var项{ 如果数组[item].id==1{ 数组[item]。已删除=true; 打破 } }
console.logarrayYou可以根据原始问题中的答案使用samei创建的代码笔的find方法。你可以在这里检查:你不应该像这样改变find里面的对象。使用.findobj=>obj.id==1的返回值,或者使用forEach而不是find@RoToRa,我更新了答案,谢谢你指出。