JavaScript 对象结构 : how to access inner field with 'complex.key'

标签 javascript

给定一个像这样的对象:

var obj = {
"name":"JonDoe",
"gender":"1",
"address":{
    "phone":"1"
    }
}

我知道你可以拥有这样的东西:

    console.log(obj['name']); // returns 'JonDoe'

我的问题在于内部结构“地址”,我想将其“电话”内部字段定位为 obj['address.phone']但它返回未定义,其中所有 1 级字段都返回匹配值。

我很确定你可以使用一些(反)序列化函数或任何 json 库来做到这一点,但我想知道是否有一种聪明的方法来列出所有内部结构,如“地址”在没有初步了解的情况下我要定位哪个字段(例如 obj[field])。

最佳答案

做:

var phone = obj.address.phone;

使用变量作为属性名称时通常使用括号表示法。如果您知道这些属性,请随意使用点符号(如上所示)

关于JavaScript 对象结构 : how to access inner field with 'complex.key' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25041719/

相关文章:

javascript - 如何在 javascript 中解析 Dailymotion 视频网址

javascript - Firebase 控制台不显示更新的数据

javascript - 在coffescript编译的JS上使用SonnarQube的相关性

JavaScript - 使图像在点击时变白

javascript - 循环 javascript promise 追加到数组

javascript - 如果 J STD TestCase 方法被 RequireJS 包装,如何从命令行运行 JS 测试驱动程序?

javascript - 将 Mongoose 对象添加到nodejs中的数组

php - 如何从我的 ajax php 函数中获取 html 和 javascript?

javascript - JavaScript小写onchange

javascript - 如何获得数组的总和