4 回答

TA貢獻1866條經驗 獲得超5個贊
您所需的數據集看起來像一個對象數組,其中大括號內的每個數據都是對象。因此,如果你想在 JS 中放入多維數組,請在變量中創建每個對象,向其中添加數據,然后將其推送到數組中。喜歡
let arr = [];
let obj1 = {}; //add data to this object
arr.push(obj1);
let obj2 = {}; //add data to this object
arr.push(obj2);
.
.
.
let objn = {}; //add data to this object
arr.push(objn)

TA貢獻1785條經驗 獲得超4個贊
不用擔心,這個架構有點混亂,總是難以編寫和閱讀。
你應該使用類似的東西:
var d = {
? datasets: [
? ? {
? ? ? label: 'Manajemen Informatika',
? ? ? data: [100, 105, 203, 160, 200],
? ? ? backgroundColor: 'rgba(189, 99, 132, 0.2)',
? ? ? borderColor: 'rgba(189, 99, 132, 1)',
? ? ? borderWidth: 1
? ? }
? ]
}
d.datasets.push(
? {
? ? label: 'Sistem Informasi',
? ? data: [90, 120, 225, 185, 200],
? ? backgroundColor: 'rgba(72, 189, 122, 0.2)',
? ? borderColor: 'rgba(72, 189, 122, 1)',
? ? borderWidth: 1
? }
)
// Read a particular value
console.log(d.datasets[1].label)
// Whole object
console.log(d)
我們不應該自己手動編寫一個對象,但Chart.js就是這樣制作的,強制將每個配置都嵌套在對象中,并且使用插件變得最糟糕,你還必須在那里傳遞函數,這會使腳本變得混亂。
旁注,出于不同的原因,建議完全避免使用 Chart.js 。

TA貢獻1829條經驗 獲得超13個贊
首先,您需要先給出輸入的定義。您編寫的結果只是一個對象數組。多維數組應該像這樣:
const multidimensionalArray = [
[1,2,3,4],
[12,13,15,16],
[17,2,31,]
]
對于你的問題,我假設你從后端接收數據:
const responseData = [{data1, data2, data3, data4}]
const result = responseData.map(item => {
/// Do some manipulate data here
const stypingObj = item.type ? styling1 : styling2
const valueArray = item.valueData // You can manipulate value also
return chartData = { ...item. data: valueArray, ...stylingObj }
})
然后它返回您的預期結果。

TA貢獻1859條經驗 獲得超6個贊
請嘗試此代碼,如何在 javascript 中推送多維數組
var PushToArray = { };
PushToArray.productID = productID;
PushToArray.itemColorTitle = itemProductTitle;
PushToArray.itemColorPath = itemProduct;
cookie_value_add.push(PushToArray);
我希望這段代碼對您有用。
謝謝。
添加回答
舉報