为了账号安全,请及时绑定邮箱和手机立即绑定

如何在javascript中推送多维数组

如何在javascript中推送多维数组

侃侃无极 2024-01-18 20:46:49
我想使用 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}]
查看完整描述

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)


查看完整回答
反对 回复 2024-01-18
?
九州编程

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 。


查看完整回答
反对 回复 2024-01-18
?
烙印99

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 }

})

然后它返回您的预期结果。


查看完整回答
反对 回复 2024-01-18
?
慕丝7291255

TA贡献1859条经验 获得超6个赞

请尝试此代码,如何在 javascript 中推送多维数组


var PushToArray = { };

PushToArray.productID = productID;

PushToArray.itemColorTitle = itemProductTitle;

PushToArray.itemColorPath = itemProduct;

cookie_value_add.push(PushToArray);

我希望这段代码对您有用。


谢谢。


查看完整回答
反对 回复 2024-01-18
  • 4 回答
  • 0 关注
  • 64 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信