JavaScript中对象中的If语句

JavaScript中对象中的If语句,javascript,object,if-statement,Javascript,Object,If Statement,我有这个对象,我想在字段_id等于40时返回一个值。我该怎么做?在这种情况下,我想返回111 myObj = [{ id: 11, company_id: 1, field_id: 7, value: 700, }, { id: 12, company_id: 1, field_id: 40, value: 111, }, { id: 13, company_id: 1, field_id: 41, value:

我有这个对象,我想在字段_id等于40时返回一个值。我该怎么做?在这种情况下,我想返回
111

  myObj = [{
   id: 11,
   company_id: 1,
   field_id: 7,
   value: 700,
},
  {
   id: 12,
   company_id: 1,
   field_id: 40,
   value: 111,
},
  {
   id: 13,
   company_id: 1,
   field_id: 41,
   value: 222,
 }]

您需要在数组中循环

var i;
for (i = 0; i < myObj.length; i++) { 
    if (myObj[i].field_id == 40) {
        return myObj[i].value
     }
}
vari;
对于(i=0;i
您需要在阵列中循环

var i;
for (i = 0; i < myObj.length; i++) { 
    if (myObj[i].field_id == 40) {
        return myObj[i].value
     }
}
vari;
对于(i=0;i
//包含对象的数组
myArr=[{
id:11,
公司编号:1,
字段id:7,
价值:700,
},
{
id:12,
公司编号:1,
字段id:40,
价值:111,
},
{
id:13,
公司编号:1,
字段id:41,
价值:222,
}
];
myFilter=(arr,key,value,output)=>arr.filter(o=>o[key]==value).map(r=>r[output]);
//结果是一个数组(如果有多个解决方案)
log(myFilter(myArr,“field_id”,40,“value”)
//包含对象的数组
myArr=[{
id:11,
公司编号:1,
字段id:7,
价值:700,
},
{
id:12,
公司编号:1,
字段id:40,
价值:111,
},
{
id:13,
公司编号:1,
字段id:41,
价值:222,
}
];
myFilter=(arr,key,value,output)=>arr.filter(o=>o[key]==value).map(r=>r[output]);
//结果是一个数组(如果有多个解决方案)

log(myFilter(myArr,“field_id”,40,“value”)
So循环并找到它。So循环并找到它。当然,即使在找到匹配项之后,这也会继续在数组上迭代。有没有一种不使用for循环的方法?也许用地图@sachaNo它不应该这样做,因为
返回
@Sacha公平点。@LizParody我不熟悉
映射
也许你也可以这样做,当然,这将在找到匹配后继续迭代数组。有没有不使用for循环的方法?也许用地图@sachaNo它不应该这样做,因为
返回
@Sacha公平点。@LizParody我不熟悉
地图
也许你也可以这样做