簡體   English   中英

動態生成對象數組-Javascript

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM