Mailson Forest
Mailson Forest

Reputation: 9

Fetch data from a nested array

I would like to know if there is a way to get the length from a nested array.

My data is a JSON file like this:

{
    "data" :[
        "item1" :'',
        "item2" :[{
            "id" :1,
            "text":'text'
        },{
            "id" :2,
            "text" : 'text 
        }] 
    ]
}

I'm using angular 6 and ngx-restangular. Is possible to get the item 2 length?

Upvotes: 0

Views: 214

Answers (2)

flx
flx

Reputation: 1578

To extend the Answer from @AurA

If you had to work with a valid array:

[
  [ "item0.0", "item0.1" ],
  [ "item1.0", "item1.1" ]
]

you could access the length of the nested arrays like this:

let a = [
  ["item0.0", "item0.1"],
  ["item1.0", "item1.1"]
];

let lengthA0 = a[0].length;
let lengthA1 = a[1].length;

console.log("length of a0: ", lengthA0);
console.log("length of a1: ", lengthA1);

Upvotes: 0

AurA
AurA

Reputation: 12363

The main problem is the question does not provide a valid json. A valid json for the same would be like as under :

{
    "data": {
        "item1": "",
        "item2": [{
                "id": 1,
                "text": "text"
            },
            {
                "id": 2,
                "text": "text"
            }
        ]
    }
}

Now you can fetch the second element size simply by

data["item2"].length

or

data.item2.length

Upvotes: 4

Related Questions