我有一个this._champ
对象(默认情况下未定义)。
我浏览一个数组,并希望使用值this._champ[champ.name][ele.infos[0].StackableRangeName] = ele.value;
添加此字段,但在第一次迭代时,[champ.name]为undefined
,而[ele.infos[0].StackableRangeName]
始终为{ {1}},如何管理?
我试过这个三元运算符,但它没有工作:
undefined
答案 0 :(得分:3)
如果尚未设置默认值,这是一个常见的习惯用法:
this.champ[champ.name] = this.champ[champ.name] || []
答案 1 :(得分:1)
检查是否存在密钥。然后推送价值:
if(this.champ && !this.champ.hasOwnProperty(champ.name)) {
this.champ[champ.name] = [];
}
this._champ[champ.name].push({ele.infos[0].StackableRangeName: ele.value});