Angularjs 匹配对象键并使用lodash向其中添加新键和值

Angularjs 匹配对象键并使用lodash向其中添加新键和值,angularjs,lodash,Angularjs,Lodash,我有一个目标 { sampletrue:{ data1:'data', data2:'data' }, samplefalse:{ data1:'data', data2:'data' } } 这里,我要做的是使用对象键名,我想在其中添加一个新的键/值对。假设对于'sampletrue'对象,我希望匹配键名,如果它有'true',我需要添加一个新值作为“resolve:'enable'”,如果它是'false',我希望添加“resolve:'disa

我有一个目标

 {
  sampletrue:{
  data1:'data',
  data2:'data'
   },
  samplefalse:{
  data1:'data',
  data2:'data'
 }   
}  
这里,我要做的是使用对象键名,我想在其中添加一个新的键/值对。假设对于'sampletrue'对象,我希望匹配键名,如果它有'true',我需要添加一个新值作为“resolve:'enable'”,如果它是'false',我希望添加“resolve:'disable'”,我在代码中使用lodash

样本输出:

 {
sampletrue:{
data1:'data',
data2:'data',
 resolve:'enable'
 },
samplefalse:{
data1:'data',
data2:'data'
resolve:'disable' 
}   
} 

谢谢

您可以在评论中找到解释:

var d={
样本正确:{
数据1:'数据',
数据2:'数据'
},
样本错误:{
数据1:'数据',
数据2:'数据'
}
}
//使用object.keys()和forEach()循环对象的键
Object.keys(d).forEach(k=>{
//我们使用match方法检查键(k)是否与“true”匹配
if(k.match(/true$/)
d[k].resolve='enable';//如果它与assign resolve prop'enable'val匹配
//同上,但带有“false”
if(k.match(/false$/)
d[k].resolve='disable';
})

console.log(d)
您可以在注释中找到解释:

var d={
样本正确:{
数据1:'数据',
数据2:'数据'
},
样本错误:{
数据1:'数据',
数据2:'数据'
}
}
//使用object.keys()和forEach()循环对象的键
Object.keys(d).forEach(k=>{
//我们使用match方法检查键(k)是否与“true”匹配
if(k.match(/true$/)
d[k].resolve='enable';//如果它与assign resolve prop'enable'val匹配
//同上,但带有“false”
if(k.match(/false$/)
d[k].resolve='disable';
})

console.log(d)
谢谢您的回答。为什么我们需要k>=只是试图理解foreach()是一个数组方法,它允许通过每个数组项循环执行函数;回调函数中的第一个参数是项(在本例中是键)。ForEach是js中的一个基础,所以慢慢来,全面了解它。我尝试过使用lodash,效果非常好。谢谢你的回答。谢谢你的回答。为什么我们需要k>=只是试图理解foreach()是一个数组方法,它允许通过每个数组项循环执行函数;回调函数中的第一个参数是项(在本例中是键)。ForEach是js中的一个基础,所以慢慢来,全面了解它。我尝试过使用lodash,效果非常好。谢谢你的回答