gpt4 book ai didi

javascript - Json数组错误无法设置未定义的属性 'model'

转载 作者:行者123 更新时间:2023-12-02 16:00:20 32 4
gpt4 key购买 nike

var temp = [{}]
var as = ['a', 'b']
for (i = 0; i < as.length; i++) {
temp[i].model = as[i]
}

我收到以下错误:

Cannot set property 'model' of undefined

最佳答案

好的,这应该可以帮助你:

var temp = [];
var as = ['a', 'b'];
for (i = 0; i < as.length; i++) {
temp[i] = temp[i] || {};
temp[i].model = as[i];
}

因为 as 可能比 temp 长,所以需要确保 temp[i] 存在,这正是 温度[i] = 温度[i] || {}; 的作用是:

  • 如果 temp[i] 存在,则不会执行任何操作。
  • 如果 temp[i] 不存在,则会将一个新的空对象 ({}) 分配给 temp[i]

请注意,我从 temp = [{}] --> temp = [] 中删除了 {}。现在您不需要那里的第一个空对象。

<小时/>

如果您绝对确定 temp 在循环之前永远不会包含任何值,您可以这样做:

for (i = 0; i < as.length; i++) {
temp[i] = { model: as[i] };
}

或者:

temp = as.map(function(item){ return { model: item }});

关于javascript - Json数组错误无法设置未定义的属性 'model',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31266093/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com