Angular Json属性未定义

时间:2018-01-15 15:10:13

标签: json angular typescript

我正在获取一个包含其他json对象作为属性的Json对象。

[
    {
     "prop": "\{"p" : "1\"}"
    }
]

我正是这样解析它:

 this.Auth.process().subscribe((x: any[]) => {

        console.log(JSON.parse(x[0].prop)); /// Works

         console.log('res: ' + JSON.parse(x[0].prop).p); /// Undefined.
        });

当我尝试检索json属性时,我得到了未定义的结果。

2 个答案:

答案 0 :(得分:0)

JSON.parse(x[0].prop).p未定义,因为x[0].prop的值是字符串而不是JSON。

您可以先解析x[0],然后从派生对象中获取p的值 -

JSON.parse(x)[0].prop

答案 1 :(得分:0)

您的JSON无效。请尝试删除此示例中的引号。

[
    {
     "prop": {"p" : "1"}
    }
]