Reputation: 63
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
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