javascript - 创建一个多维数组并填充它

标签 javascript multidimensional-array

我想在我的页面上绘制图表,并且想使用 Charts.js。上的文档

http://www.chartjs.org/docs/

说我要创建的字符需要这样的标签数组:

var data = {

    labels : ["January","February","March","April","May","June","July"],
    datasets : [
        {
            fillColor : "rgba(220,220,220,0.5)",
            strokeColor : "rgba(220,220,220,1)",
            pointColor : "rgba(220,220,220,1)",
            pointStrokeColor : "#fff",
            data : [65,59,90,81,56,55,40]
        },
        {
            fillColor : "rgba(151,187,205,0.5)",
            strokeColor : "rgba(151,187,205,1)",
            pointColor : "rgba(151,187,205,1)",
            pointStrokeColor : "#fff",
            data : [28,48,40,19,96,27,100]
        }
    ]
}
  1. 问题:如何创建这样的数组?

  2. 问题:如何用文本域的输入填充这个数组?

谢谢! 简

最佳答案

A1) 你所写的方式是在 javascript 中创建数组的正确方式

A2) 假设您有一个带有 id='month' 的文本字段。您可以像这样访问它的值:

var month = document.getElementById('month').value

接下来您可以创建一个数组 var label = []; 并通过插入数组来添加文本字段中的数据。即 label.push(month)

label 填充数组后,您可以将此数组分配给 data 对象的属性 labels

类似地给数据赋值,创建一个数组var values = []; var values2 = []; 现在通过将值插入数组来填充 valuesvalues2 数组。

var label = [];
var values = []; 
var values2 = [];
var month = document.getElementById('month').value;  
//keep on doing this for all input fields
label.push(month)
//similarly push data into values and values2.
//Now build your structure for chart as follows:
var data = {

    labels : label,
    datasets : [
        {
            fillColor : "rgba(220,220,220,0.5)",
            strokeColor : "rgba(220,220,220,1)",
            pointColor : "rgba(220,220,220,1)",
            pointStrokeColor : "#fff",
            data : values
        },
        {
            fillColor : "rgba(151,187,205,0.5)",
            strokeColor : "rgba(151,187,205,1)",
            pointColor : "rgba(151,187,205,1)",
            pointStrokeColor : "#fff",
            data : values2
        }
    ]
}

此处 labelvaluesvalues2 是您从文本字段中获得的数组。 希望这会有所帮助。

关于javascript - 创建一个多维数组并填充它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20174315/

相关文章:

JavaScript 基础知识 : array or arrays

c - 生命游戏,C 检查生活条件

javascript - 将文本编译为特定范围的 Angular html 并将其渲染为 DOM

javascript - 为什么表单提交的 addEventListener 不起作用?

javascript - Javascript将字符串转换为多维数组

c++ - 如何在不增加 vector 大小的情况下保留多维 vector ?

调整/放大数组并在 R 中填充 NA

php - 在数组中添加额外的值

javascript - 如何在Javascript中正确调用匿名函数的函数?

javascript - HTML 表单输入 javascript 自动求和 支付总价