JSON - JavaScript获取嵌套值

JSON - JavaScript get nested value

本文关键字:嵌套 获取 JavaScript JSON      更新时间:2023-09-26

假设我从Firebase查询中获取了这个JavaScript对象

{
    "player": {
        "player:616320": {
            "skills": {
                "main": {
                    "attack": 1,
                    "defence": 1
                }
            },
            "uid": "player:616320",
            "username": "test1",
            "x": 1,
            "y": 1
        }
    }
}
var data = snap.val();

我可以用data.username得到test1…但我怎样才能走得更远呢?我试着搜索JSON嵌套和…这很复杂。

snap.val()为上面的JSON object。如何从main中获得attack ?

在你的例子中,应该是:

obj.player["player:616320"].skills.main.attack

其中obj为JSON对象。

这是一个树,在.之后是子树,像这样:parent.child。当有一个值不能正常表示时,您需要执行parent["some-Value"]

在你的情况下,似乎playerData实际上是obj.player["player:616320"]的值,而不是整个JSON对象。在这种情况下,同样的概念也适用:

playerData.skills.main.attack