2

我有以下 JSON 对象:

[{"id":"123","username":"test"}]

我想username使用javascript解析所以我这样做了

var content = '[{"id":"123","username":"test"}]
obj = JSON.parse(content)
alert(obj.username)

我收到警报:undefined

我试过在没有的情况下解析 JSON[ ]并且它有效

例如:

var content = '{"id":"123","username":"test"}'
obj = JSON.parse(content)
alert(obj.username)

我的问题是我将如何解析带有 [ ] 标签的 JSON?谢谢!

4

2 回答 2

10

那是因为[]使它成为一个数组。试试alert(obj[0].username)

如果您将 JSON 更改为如下所示...

[ {"id":"123","username":"test"}, {"id":"456","username":"test 2"}]

那么alert(obj[1].username)将是test 2,并且alert(obj[0].username)将是test

于 2012-10-24T19:46:50.737 回答
2

您在第一种情况下得到的未定义错误是因为 JSON 表示其中包含单个对象的 ARRAY。为了访问您需要的用户名alert(obj[0].username)

于 2012-10-24T19:47:35.853 回答