user4473065
user4473065

Reputation: 63

nodejs JSON.parse() of stack overflow API

Here is my code.

var request = require('request');
var API = "https://api.stackexchange.com/2.2/users?page=1&order=desc&sort=reputation&site=stackoverflow";

request(API, function(e//console.dir(body);
if( err || response.statusCode != 200 ) {
    console.log("Error",err); return;
}

var stringify = JSON.stringify(body);
var obj = JSON.parse(stringify);

var items = obj.items;
for (var i in items) {
   var item = items[i];
   var display_name = item.display_name;
   console.log("display_name", display_name);
}

});

node stack.js

I would like to get display_name from json(https://api.stackexchange.com/2.2/users?page=1&order=desc&sort=reputation&site=stackoverflow). However, nothing happens(var items gets "undefined"). What should I do to fix it?

Upvotes: 0

Views: 67

Answers (1)

tymeJV
tymeJV

Reputation: 104785

You're using a for in loop when you should just be using a regular for loop. for in is for iterating over the properties of an object - where you want to iterate over the elements of an array:

for (var i = 0; i < items.length; i++) {
    var item = items[i];
    var display_name = item.display_name;
    console.log("display_name", display_name);
}

Upvotes: 1

Related Questions