var add = [];
add[0].url = data.url;
add[0].photo = data.thumb;
console.log(add);
This'll be an instant know for most JS people. The code above is failing, anyone able to tell me where I'm going wrong
Ivo Wetzel
46.8k17 gold badges102 silver badges112 bronze badges
asked Nov 22, 2010 at 1:56
James
6,02615 gold badges50 silver badges73 bronze badges
3 Answers 3
add[0] doesn't exist... .push something first.
add.push({ url:data.url, photo:data.thumb })
or
add[0] = {};
add[0].url = 'blah';
add[0].photo = 'foo'
answered Nov 22, 2010 at 1:58
meder omuraliev
187k76 gold badges402 silver badges443 bronze badges
Sign up to request clarification or add additional context in comments.
Comments
You are assigning to properties of the add[0] object but you haven't made any such object.
add[0] = { };
add[0].url = data.url;
add[0].photo = data.thumb;
answered Nov 22, 2010 at 1:59
John Kugelman
365k70 gold badges555 silver badges600 bronze badges
Comments
A different option for you; instead of pushing into an empty array, and declaring an empty object
var add = new Array(); //create new array object
add[0] = {url:data.url, photo:data.thumb}; //add new object with items url and photo
answered Nov 22, 2010 at 2:01
John Hartsock
87.1k23 gold badges135 silver badges146 bronze badges
Comments
lang-js