Javascript 读取嵌套对象

Javascript 读取嵌套对象,javascript,Javascript,我有一个目标: var body = { "LocationInfo": { "Stores": [ { "Number": 524, "Name": "Store" } ] } }; 但我无法读取对象内部的任何内容,例如: console.log(body[“LocationInfo”][“Stores”][0])未定义 这太基本了。。。我不确定出了什么问题。它确实按预期工作;undefined只是console

我有一个目标:

var body = {
  "LocationInfo": {
    "Stores": [
      {
        "Number": 524,
        "Name": "Store"
      }
    ]
  }
};
但我无法读取对象内部的任何内容,例如:

console.log(body[“LocationInfo”][“Stores”][0])未定义

这太基本了。。。我不确定出了什么问题。

它确实按预期工作;undefined只是
console.log
的返回值


来源:

您的对象没有问题。您看到“未定义”的原因并不是因为您的对象错误或其中的某些内容未定义。只是控制台在console.log()之后追加了undefined;函数被调用。 有关更多信息,请参阅:


好的,我解决了我的问题:节点请求模块中有一个错误,它包装了双转义,所以我做到了:

body = JSON.parse(body);
body = JSON.parse(body);

连续两次成功了

它在我的控制台上工作<代码>对象{编号:524,名称:“存储”}已记录。此处相同<代码>变量x=主体[“位置信息”][“存储”][0]。对于MEX,x不是未定义的。您将不得不显示更多的代码。你发布的代码运行良好。它为我们工作me@Juhana这是我试图阅读的完整JSON:为什么这是被否决的
console.log(“digitalsteez”)VM332:2 digitalsteez undefined
这与在控制台中运行jrbaldwinn的代码时发生的情况相同:
console.log(body[“LocationInfo”][“Stores”][0]);VM343:2对象{Number:524,Name:“Store”}未定义
甚至有一个符号表示它是函数的返回值。如果确实在节点上运行此操作,我不确定发生了什么。这是我从节点上的代码中得到的:
$Node test.js{Number:524,Name:'Store'}