Brett Walton
Brett Walton

Reputation: 23

Accessing JSON objects nested inside array

I've been trying to access the JSON from this API. However, when I run a request to retrieve the JSON I'm met with the following list when I run this code.

const request = require('request');

var url = 'https://api.collegefootballdata.com/rankings?year=2019&week=10&seasonType=regular'
request(url,(err, res, body) => {
    if(!err && res.statusCode == 200) {
        var obj = JSON.parse(body);
        console.log(obj);
    }
});

My output:

[
  {
    season: 2019,
    seasonType: 'regular',
    week: 10,
    polls: [ [Object], [Object], [Object] ]
  }
]

My problem here lies in the fact that I want the information from each POLL (5 polls listed as objects in the JSON by following the link, however I cannot figure out how to WORK with this.) For example, I would want to call polls[0].rank to populate a list of the top 25 teams from the poll.

Accessing the arrays of objects inside nested JSON has obviously been a problem for me in Node, and would love to get started on the right foot when working with this project.

Upvotes: 1

Views: 425

Answers (2)

Richard
Richard

Reputation: 27508

Looking at the JSON, there are 3 separate polls, and each poll has it's own top 25 list in ranks.

obj.polls[0].ranks
obj.polls[1].ranks
obj.polls[2].ranks

ranks is array of objects as well, so if you want to see the school the reference would be

obj.polls[0].ranks[0].school

You can easily examine the JSON, in a browser, using developer tools and Network tab.

enter image description here

Upvotes: 1

Mohammed naji
Mohammed naji

Reputation: 1102

since polls is an array, I would love to use map so my code could be

obj.polls.map((pol)=>{ // so you can access the object pol which includes ranks and other proprites // do whatever you want here }

Upvotes: 0

Related Questions