Для большинства объектов используйте for .. in
:
for (let key in yourobject) {
console.log(key, yourobject[key]);
}
С ES6, если вам нужны одновременно ключи и значения, выполните
for (let [key, value] of Object.entries(yourobject)) {
console.log(key, value);
}
Чтобы избежать регистрации унаследованных свойств, проверьте с помощью hasOwnProperty :
for (let key in yourobject) {
if (yourobject.hasOwnProperty(key)) {
console.log(key, yourobject[key]);
}
}
Вам не нужно проверять hasOwnProperty
при итерации ключей, используете ли вы простой объект (например, тот, который вы сделали сами {}
).
В этой документации MDN более подробно объясняется, как обращаться с объектами и их свойствами.
Если вы хотите сделать это «порциями», лучше всего извлечь ключи из массива. Поскольку заказ не гарантирован, это правильный путь. В современных браузерах вы можете использовать
let keys = Object.keys(yourobject);
Чтобы быть более совместимым, вам лучше сделать это:
let keys = [];
for (let key in yourobject) {
if (yourobject.hasOwnProperty(key)) keys.push(key);
}
Затем вы можете перебирать свои свойства по индексу yourobject[keys[i]]
:
for (let i=300; i < keys.length && i < 600; i++) {
console.log(keys[i], yourobject[keys[i]]);
}