loops - How to iterate over a JavaScript object? -
i have object in javascript:
{ abc: '...', bca: '...', zzz: '...', xxx: '...', ccc: '...', // ... }
i want use for
loop properties. , want iterate in parts (not object properties @ once).
with simple array can standard for
loop:
for (i = 0; < 100; i++) { ... } // first part (i = 100; < 300; i++) { ... } // second (i = 300; < arr.length; i++) { ... } // last
but how objects?
for objects, use for .. in
:
for (var key in yourobject) { console.log(key, yourobject[key]); }
to avoid logging inherited properties, check hasownproperty :
for (var key in yourobject) { if (yourobject.hasownproperty(key)) { console.log(key, yourobject[key]); } }
this mdn documentation explains more how deal objects , properties.
if want "in chunks", best extract keys in array. order isn't guaranteed, proper way. in modern browsers, can use
var keys = object.keys(yourobject);
to more compatible, you'd better :
var keys = []; (var key in yourobject) { if (yourobject.hasownproperty(key)) keys.push(key); }
then can iterate on properties index: yourobject[keys[i]]
:
for (var i=300; i<keys.length && i<600; i++) { console.log(keys[i], yourobject[keys[i]]); }
Comments
Post a Comment