一尘不染

如果名称中包含点,如何获取JSON对象值?

javascript

我有一个非常简单的JSON数组(请关注 “ points.bean.pointsBase” 对象):

var mydata =   
{"list":  
  [  
    {"points.bean.pointsBase":  
      [  
        {"time": 2000, "caption":"caption text", duration: 5000},  
        {"time": 6000, "caption":"caption text", duration: 3000}  
      ]  
    }  
  ]  
};

// Usually we make smth like this to get the value: 
var smth = mydata.list[0].points.bean.pointsBase[0].time; 
alert(smth); // should display 2000

但是,不幸的是,它没有显示任何内容。
当我将 “ points.bean.pointsBase” 更改为不 带点 的名称时,一切正常!

但是,我不能将这个名称更改为没有点的任何其他名称,但是我需要获取一个值吗?
有什么选择吗?


阅读 317

收藏
2020-05-01

共1个答案

一尘不染

您想要的是:

var smth = mydata.list[0]["points.bean.pointsBase"][0].time;

在JavaScript中,您可以使用来访问任何字段。运算符,则可以使用[]和字段名称的字符串版本进行访问。

2020-05-01