[英]Dynamically generate array of objects - Javascript
我正在将D3饼图调整为适合自己的工作,并希望动态地重新创建下面显示的数据结构。
var data = [
{"label":"Colorectale levermetastase (n=336)", "value":74},
{"label": "Primaire maligne levertumor (n=56)", "value":12},
{"label":"Levensmetatase van andere origine (n=32)", "value":7},
{"label":"Beningne levertumor (n=34)", "value":7}];
我试过了
data += {"label": cat_row, "value": +freq_row};
但是它并不能达到预期的效果。 同时推动也无济于事。
data["label"] = cat_row;
上面的行似乎覆盖了每个迭代。
任何指导将不胜感激。
有几种方法可以动态地重新创建数据结构。
要将新元素添加到数组的末尾:
data.push({"label": cat_row, "value": +freq_row});
要么
data[data.length] = {"label": cat_row, "value": +freq_row};
要将新元素添加到数组的开头:
data.unshift({"label": cat_row, "value": +freq_row}));
同时推动也无济于事。
您快到了,需要用这种方式推动
var data = [];
data.push( {"label": cat_row, "value": freq_row } );
如果需要数组,则需要使用Array#push()
。 这会将参数中的元素添加到数组的末尾
var data = [];
data.push({label:"test"});
您要向阵列添加数据还是要替换数据?
向数组添加数据使用:
data.push({"label": cat_row, "value": +freq_row})
替换数组中的数据:
var index = 0;
data[index] = {"label": cat_row, "value": +freq_row};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.