man_or_astroman
man_or_astroman

Reputation: 648

Counting arrays insinde array in Json

I'm getting this JSON file. The path arrays can be from 1 to 100,

{
"waypoints": [
    {
        "path0": [
            {
                "color": "#0000FF"
            },
            {
                "lat": "37.9875000",
                "lon": "23.7609260"
            },
            {
                "lat": "37.9873130",
                "lon": "23.7607460"
            },
            {
                "lat": "37.9873840",
                "lon": "23.7604100"
            }
        ],
        "path1": [
            {
                "color": "#00FF00"
            },
            {
                "lat": "37.9873840",
                "lon": "23.7604100"
            },
            {
                "lat": "37.9878040",
                "lon": "23.7605670"
            },
            {
                "lat": "37.9882590",
                "lon": "23.7607340"
            }
        ],
        "path2": [
            {
                "color": "#FF0000"
            },
            {
                "lat": "37.9882590",
                "lon": "23.7607340"
            },
            {
                "lat": "37.9884690",
                "lon": "23.7598760"
            }
        ]
    }
]
}

How can i see how many path(path0, path1, ..) arrays do i have inside waypoints in Javascript? Using obj.waypoints.length returns 0.

Thank you.

Upvotes: 1

Views: 69

Answers (1)

Denys Séguret
Denys Séguret

Reputation: 382092

On a modern browser you can use Object.keys :

var nbpaths = Object.keys(obj.waypoints[0]).length;

For compatibility with ie8, you can count like this :

var nbpaths = 0;
for (var key in obj.waypoints[0]) nbpaths++;

Upvotes: 1

Related Questions