【发布时间】:2020-12-08 14:08:52
【问题描述】:
我正在尝试更新一个对象属性具有特定值的数组。
详情:
我有一个简单的方法 (setMissingFields(model)),它以 model 作为参数。在方法中,我循环对象 (model),并希望在属性设置为 mandatory: true 时更新数组 (missingArray[])。
下面是我的“干净”代码(我尝试过使用if (typeof (value) === 'object') 的各种嵌套循环):
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);
}
}
}
【问题讨论】:
-
从给定的 json 数据中你想要的预期输出(missingArray)是什么?
标签: javascript arrays angular typescript