Home > Net >  Extract value inside a multi-nested JSON Object with a "number" as a key name?
Extract value inside a multi-nested JSON Object with a "number" as a key name?

Time:09-17

I'm trying to get the title of the first song in the JSON Object below but I have to go through a number as a key name.

Normally, we can do like this: title = top100.content.rank.title but it doesn't work with title = top100.content.1.title like the Object below.

My current solution is: title = Object.values(Object.values(top10.data)[1])[0].title which is very long and ugly. If you have a better way, please help me.

top100 = {
    "info": {
        "category": "Billboard",
        "chart": "HOT 100",
        "date": "2021-09-11",
        "source": "Billboard-API"
    },
    "content": {
        "1": {
            "rank": "1",
            "title": "Butter",
            "artist": "BTS",
            "weeks at no.1": "10",
            "last week": "7",
            "peak position": "1",
            "weeks on chart": "15",
            "detail": "up"
        },
        "2": {
            "rank": "2",
            "title": "Stay",
            "artist": "The Kid LAROI & Justin Bieber",
            "last week": "1",
            "peak position": "1",
            "weeks on chart": "8",
            "detail": "down"
        },
        ...
    }
}

CodePudding user response:

you can use the obj[key] syntax

top100['content'][1]['title']

CodePudding user response:

you can access title of the first song in this way:

top100.content["1"].title
  • Related