Javascript 更新对象属性具有特定值的数组
我正在尝试更新对象属性具有特定值的数组 详细信息: 我有一个简单的方法(Javascript 更新对象属性具有特定值的数组,javascript,arrays,angular,typescript,Javascript,Arrays,Angular,Typescript,我正在尝试更新对象属性具有特定值的数组 详细信息: 我有一个简单的方法(setMissingFields(model))将model作为参数。在方法中,我在对象(model)上循环,并希望在属性设置为mandatory:true时更新数组(missingArray[]) 下面是我的“干净”代码(我使用if(typeof(value)==“object”)尝试了各种嵌套循环): 您可以尝试下面的循环方法来获得所需的输出。 在每次循环迭代中,它都会检查该对象中是否存在强制字段,如果存在,那么该字段的
setMissingFields(model)
)将model
作为参数。在方法中,我在对象(model
)上循环,并希望在属性设置为mandatory:true
时更新数组(missingArray[]
)
下面是我的“干净”代码(我使用if(typeof(value)==“object”)
尝试了各种嵌套循环):
您可以尝试下面的循环方法来获得所需的输出。 在每次循环迭代中,它都会检查该对象中是否存在强制字段,如果存在,那么该字段的值是多少,如果值为true,那么我也会验证值字段包含什么 如果它满足所有条件,我将在新数组中添加该字段 如果没有,那么我将对当前对象递归调用相同的方法
var resultset=[];
var模型={
名称:{value:'',必需:true},
首字母:{value:'',必填项:false},
物理地址:{
addressPostalCode:{value:'',必填项:true},
},
邮资:{
address1:{value:'',必需:false},
},
};
功能筛选键(数据){
如果(数据){
for(对象项(数据)的常量[键,值]){
var currentValue=当前值;
if(value.hasOwnProperty(“强制”)
&&值[“必需”]==true&&!值[“值”]){
console.log(键、值);
resultset.push({fieldName:key,expectedValue:''})
}否则{
filterkey(当前值);
}
}
}
}
过滤键(型号);
console.log(resultset)代码>给定json数据的预期输出(missingArray)是什么?
model = {
name: { value: '', mandatory: false },
initials: { value: '', mandatory: false },
physicalAddress: {
addressPostalCode: { value: '', mandatory: true },
},
postalAddress: {
address1: { value: '', mandatory: true },
},
};
setMissingFields(model) {
for (const [key, value] of Object.entries(model)) {
if (value === '') {
this.missingArray.push({ FieldName: key, ExpectedValue: ''});
}
else if (typeof (value) === 'object') {
this.setMissingFields(value);
}
}
}