Para a maioria dos objetos, use for .. in
:
for (let key in yourobject) {
console.log(key, yourobject[key]);
}
Com o ES6, se você precisar de chaves e valores simultaneamente, faça
for (let [key, value] of Object.entries(yourobject)) {
console.log(key, value);
}
Para evitar o registro de propriedades herdadas, verifique com hasOwnProperty :
for (let key in yourobject) {
if (yourobject.hasOwnProperty(key)) {
console.log(key, yourobject[key]);
}
}
Você não precisa verificar hasOwnProperty
ao iterar as chaves se estiver usando um objeto simples (por exemplo, um com que você se criou {}
).
Esta documentação do MDN explica de maneira mais geral como lidar com objetos e suas propriedades.
Se você quiser fazê-lo "em partes", o melhor é extrair as chaves em uma matriz. Como o pedido não é garantido, esta é a maneira correta. Nos navegadores modernos, você pode usar
let keys = Object.keys(yourobject);
Para ser mais compatível, é melhor fazer o seguinte:
let keys = [];
for (let key in yourobject) {
if (yourobject.hasOwnProperty(key)) keys.push(key);
}
Em seguida, você pode iterar suas propriedades por índice yourobject[keys[i]]
:
for (let i=300; i < keys.length && i < 600; i++) {
console.log(keys[i], yourobject[keys[i]]);
}