gpt4 book ai didi

javascript - 如何在javascript中动态地向对象数组添加值?

转载 作者:可可西里 更新时间:2023-11-01 01:21:11 24 4
gpt4 key购买 nike

这是一个对象数组,

var data = [
{"label" : "1", "value" : 12},
{"label" : "1", "value" : 12},
{"label" : "1", "value" : 12},
{"label" : "1", "value" : 12}
];

如何动态地为这些值添加值?我尝试了以下代码但没有成功:

var lab =["1","2","3", "4"];
var val = [42,55,51,22];
var data = new Array();
for(var i=0; i<4; i++){
data[i].label = lab[i];
data[i].value = val[i];
}

最佳答案

您必须先实例化对象。最简单的方法是:

var lab =["1","2","3"];
var val = [42,55,51,22];
var data = [];
for(var i=0; i<4; i++) {
data.push({label: lab[i], value: val[i]});
}

或者另一种不太简洁但更接近您的原始代码的方式:

for(var i=0; i<4; i++)  {
data[i] = {}; // creates a new object
data[i].label = lab[i];
data[i].value = val[i];
}

array() 不会创建新数组(除非您定义了该函数)。 Array()new Array() 或只是 []

我建议阅读 MDN JavaScript Guide .

关于javascript - 如何在javascript中动态地向对象数组添加值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7858385/

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