javascript - 如果名称包含点,如何获取对象值?

我有一个非常简单的数组(请关注以"points.bean.pointsBase"为key的对象):

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" 更改为名称中没有点的内容时 - 一切正常。

但是,我不能将此名称更改为没有点的其他名称,但我需要获取一个值?有什么办法可以得到吗?

最佳答案

你想要的是:

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

在 JavaScript 中,您可以使用 .运算符,您可以使用 [] 与字段名称的字符串版本进行访问。

https://stackoverflow.com/questions/2577172/

相关文章:

javascript - 请求的资源错误中不存在 'Access-Control-Allow-Ori

python - 如何在 Python 中美化 JSON?

python - 如何使用 python 请求和处理 JSON?

javascript - 将 JSON 发送到服务器并返回 JSON,无需 JQuery

javascript - JSON Stringify 因 UTC 而更改日期时间

c# - 将 POST 中的 json 发送到 Web API 服务时出错

json - json.js 和 json2.js 的区别

json - AngularJS:工厂 $http.get JSON 文件

python - Google App Engine 模型的 JSON 序列化

javascript - JSON 是否应该包含空值