首页 > 解决方案 > 访问数组内的对象 - Javascript

问题描述

这就是我的响应正文的样子。它存储在一个变量中,当我使用 console.log(body) 时,我得到以下信息。

[
   {
      "key1":"value1",
      "key2":"value2",
      "key3":"value3"
   }
]

我尝试使用以下方法访问“key3”

console.log(body[0].key3) 

我不确定。我不确定这里有什么问题。如果我只是这样做

console.log(body[0])

我得到一个字符串[

感谢您在这里的帮助。

标签: javascriptarraysjsonstringobject

解决方案


问题解释

您的 JS 正在查看特定字符的属性:

请看以下示例,该示例将有助于演示正在发生的事情:

const string = 'Hello';
console.log(string[0] === 'H'); // true
console.log('H'.key3 === undefined); // true


解决方案

你需要JSON.parse字符串:

const body = `
[
   {
      "key1":"value1",
      "key2":"value2",
      "key3":"value3"
   }
]
`;

const parsed = JSON.parse(body);
console.log(parsed[0].key3);


推荐阅读