无法从JSON访问键值

时间:2018-06-25 11:47:26

标签: javascript jquery json object key-value

我有一个如下的json

var object = {200x200: "url1", 400x400: "url2", 800x800: "url3"};

我对对象进行了字符串化处理,并尝试使用“ 200x200”。但是它的抛出

  

未定义

object = JSON.stringify(object);
//object = {"200x200": "url1", "400x400": "url2", "800x800": "url3"};

我试图这样访问

object['200x200'] // got undefined

还有其他方法可以从此对象访问url1吗?

4 个答案:

答案 0 :(得分:2)

因为您的json对象格式错误:

将密钥用引号引起来,例如:https://codepen.io/creativedev/pen/LrBOmG

var object = {'200x200': "url1",'400x400': "url2", '800x800': "url3"};

然后检查:

console.log(object['200x200']);

您将获得输出

答案 1 :(得分:1)

您应该将对象更改为

var object = {'200x200': "url1", '400x400': "url2", '800x800': "url3"};

object['200x200'] // 'url1'

答案 2 :(得分:1)

将其字符串化后,它就是一个字符串。您必须将其解析回一个对象。

onChildAdded

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse

答案 3 :(得分:1)

您可以解析它:

object = JSON.parse(object);

然后访问密钥:

let url1 = object['200x200']

不知道为什么要首先将其字符串化!

let jsonObject = JSON.stringify(object);
// instead of:
let url1 = JSON.parse(JSON.stringify(object))['200x200']