Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.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_Jquery_Json - Fatal编程技术网

Javascript 如何根据另一个属性在特定位置更改JSON对象?

Javascript 如何根据另一个属性在特定位置更改JSON对象?,javascript,jquery,json,Javascript,Jquery,Json,我们怎样才能改变约翰的姓?(不知道它是Doe)您可以使用$。每个实用功能: { "employees": [ { "firstName":"John" , "lastName":"Doe" }, { "firstName":"Anna" , "lastName":"Smith" }, { "firstName":"Peter" , "lastName":"Jones" } ] } 您还可以将本机用于循环 $.each(obj.employees, fun

我们怎样才能改变约翰的姓?(不知道它是Doe)

您可以使用
$。每个
实用功能:

{
  "employees": [
    { "firstName":"John" , "lastName":"Doe" }, 
    { "firstName":"Anna" , "lastName":"Smith" }, 
    { "firstName":"Peter" , "lastName":"Jones" }
  ]
}


您还可以将本机
用于
循环

$.each(obj.employees, function(i, v){
   if (v.firstName === 'John') {  
       v.lastName = 'newValue'
       // return false
   }
})
for(var i=0;i
您可以使用
$。每个
实用功能:

{
  "employees": [
    { "firstName":"John" , "lastName":"Doe" }, 
    { "firstName":"Anna" , "lastName":"Smith" }, 
    { "firstName":"Peter" , "lastName":"Jones" }
  ]
}


您还可以将本机
用于
循环

$.each(obj.employees, function(i, v){
   if (v.firstName === 'John') {  
       v.lastName = 'newValue'
       // return false
   }
})
for(var i=0;i
无需jQuery:

for (var i = 0; i < obj.employees.length; i++) {
   if (obj.employees[i].firstName === 'John') {
      obj.employees[i].lastName = 'newValue';
      return false;
   }
}
不需要jQuery:

for (var i = 0; i < obj.employees.length; i++) {
   if (obj.employees[i].firstName === 'John') {
      obj.employees[i].lastName = 'newValue';
      return false;
   }
}

您还可以使用for循环,它甚至更干净…我认为这更干净,因为您需要获取元素的数量。这不会改变obj.employees,它会修改每个范围内的变量“v”。。。我相信您必须执行obj.employees[I]='newValue'来修改原始对象。编辑:我错了。向下看。@Aktee这会改变实际对象的属性。@pedrosperança它会停止循环的执行。你也可以使用for循环,它甚至更干净……我认为这更干净,因为你需要获取元素的数量。这不会改变obj.employees,它会修改每个范围内的变量“v”。。。我相信您必须执行obj.employees[I]='newValue'来修改原始对象。编辑:我错了。向下看。@Aktee这会改变实际对象的属性。@pedrosperança它会停止执行循环。