定义JavaScript对象文字以便数组中所有对象的属性都存在?
我使用默认值定义JavaScript对象文字,以便我的模板以后可以访问它们:定义JavaScript对象文字以便数组中所有对象的属性都存在?,javascript,arrays,javascript-objects,Javascript,Arrays,Javascript Objects,我使用默认值定义JavaScript对象文字,以便我的模板以后可以访问它们: self.emails = [{ address: "", validation: { warning: false, message: "", } }]; 这适用于self.emails[0],但我还需要self.emails[1]到self.emails[4]的属性。有没有比打字更好的方法来实现这一点: self.emails = [{ addres
self.emails = [{
address: "",
validation: {
warning: false,
message: "",
}
}];
这适用于self.emails[0]
,但我还需要self.emails[1]
到self.emails[4]
的属性。有没有比打字更好的方法来实现这一点:
self.emails = [{
address: "",
validation: {
warning: false,
message: "",
}
},
address: "",
validation: {
warning: false,
message: "",
}
},
address: "",
validation: {
warning: false,
message: "",
}
},
address: "",
validation: {
warning: false,
message: "",
}
},
address: "",
validation: {
warning: false,
message: "",
}
}];
使用一个简单的for循环:
self.emails = []
for (let i = 0; i < 5; i++) {
self.emails.push({
address: "",
validation: {
warning: false,
message: "",
}
})
}
self.emails=[]
for(设i=0;i<5;i++){
自我推送({
地址:“,
验证:{
警告:错误,
消息:“”,
}
})
}
我将按如下方式完成这项工作
var selfEmails=[{
地址:“,
验证:{
警告:错误,
消息:“”,
}
}],
lonselfemails=Array(…Array(5)).map(o=>{o=Object.assign({},(selfEmails[0]));
o、 validation=Object.assign({},o.validation);
返回o;
}),
modified=lonselfemails.map((o,i)=>{o.validation.message=i;
o、 address=“addr_0”+i;
返回o;
});
控制台日志(修改)代码>可能重复的