Javascript-访问对象

Javascript - Accessing object

本文关键字:对象 访问 Javascript-      更新时间:2023-09-26

我有以下数据对象

var data = {
  labels: ["2013", "2014", "2015", "2016"],
  datasets: [
    {
      label: "Label 1", 
      data: data1,
    }, 
    {
      label: "Label 2", 
      data: data2, 
    }
  ]
};

我想要第二个标签"标签2"。

我试过使用

console.log(data.datasets[0].label); // Only returns Label 1
console.log(data.datasets[0][1].label); // Doesn't work

我不想对结构进行更改,因为我正在使用Chart.js来绘制图表。

提前谢谢。

您可以这样访问它:

console.log( data.datasets[1].label );

示例:https://jsfiddle.net/55ex0p80/

让我们把它分解为四个步骤:

data.datasets[ 1 ].label
|    |         |  |
1    2         3  4
|    |         |  '- The field "label" of the object
|    |         '---- The desired key of the array called "datasets"
|    '-------------- The array called "datasets"
'------------------- The data object

这样,你就可以到达你想要的标签字段:

var data = {             <---- step 1
  labels: ["2013", "2014", "2015", "2016"],
  datasets: [            <---- step 2
    {
      label: "Label 1", 
      data: data1,
    }, 
    {                    <---- step 3
      label: "Label 2",  <---- step 4
      data: data2, 
    }
  ]
};
  • data = {}是一个对象
  • labels =["2013","2014",...]是字符串数组
  • datasets = [{},{},{}]是一个对象数组

因此,为了访问'Label 2',您需要访问数据集数组的第二个对象,然后访问其标签为:data.datasets[1].label