如何在javascript中推送多维数组

我想使用 javascript 推送一个多维数组。我需要它来设置 ChartJs 的数据集。我想要这样的结果:


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

}, {

    label: 'Teknik Informatika',

    data: [105, 100, 250, 170, 190],

    backgroundColor: 'rgba(94, 126, 189, 0.2)',

    borderColor: 'rgba(94, 126, 189, 1)',

    borderWidth: 1

}, {

    label: 'Sistem Informasi',

    data: [90, 120, 225, 185, 200],

    backgroundColor: 'rgba(72, 189, 122, 0.2)',

    borderColor: 'rgba(72, 189, 122, 1)',

    borderWidth: 1

}]


侃侃无极
浏览 122回答 4
4回答

心有法竹

您所需的数据集看起来像一个对象数组,其中大括号内的每个数据都是对象。因此,如果你想在 JS 中放入多维数组,请在变量中创建每个对象,向其中添加数据,然后将其推送到数组中。喜欢let arr = [];let obj1 = {}; //add data to this objectarr.push(obj1);let obj2 = {}; //add data to this objectarr.push(obj2);...let objn = {}; //add data to this objectarr.push(objn)

九州编程

不用担心,这个架构有点混乱,总是难以编写和阅读。你应该使用类似的东西: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 valueconsole.log(d.datasets[1].label)// Whole objectconsole.log(d)我们不应该自己手动编写一个对象,但Chart.js就是这样制作的,强制将每个配置都嵌套在对象中,并且使用插件变得最糟糕,你还必须在那里传递函数,这会使脚本变得混乱。旁注,出于不同的原因,建议完全避免使用 Chart.js 。

烙印99

首先,您需要先给出输入的定义。您编写的结果只是一个对象数组。多维数组应该像这样: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 }})然后它返回您的预期结果。

慕丝7291255

请尝试此代码,如何在 javascript 中推送多维数组var PushToArray = { };PushToArray.productID = productID;PushToArray.itemColorTitle = itemProductTitle;PushToArray.itemColorPath = itemProduct;cookie_value_add.push(PushToArray);我希望这段代码对您有用。谢谢。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript