Resumo : neste tutorial, você aprenderá várias maneiras de iterar um objeto em JavaScript.
O for...in
laço
O for...in
loop permite iterar as propriedades enumeráveis de um objeto . Em cada iteração, você pode obter a chave do objeto e, com ela, acessar o valor da propriedade. Por exemplo:
let person = {
firstName: 'John',
lastName: 'Doe',
age: 25,
ssn: '123-456-2356'
};
for (let key in person) {
if (person.hasOwnProperty(key)) {
console.log(`${key} : ${person[key]}`);
}
}
Linguagem de código: JavaScript ( javascript )
Saída:
firstName : John
lastName : Doe
age : 25
ssn : 123-456-2356
Este hasOwnProperty()
método garante que a propriedade pertença ao person
objeto, não às propriedades herdadas.
Observe que for...in
ignora propriedades codificadas por Symbols .
Object.keys()
O Object.keys()
pega um objeto e retorna uma matriz de propriedades do objeto. Ao encadear Object.keys()
o forEach()
método, você pode acessar as chaves e os valores de um objeto. Observe que o Object.keys()
método foi introduzido no ES6 . Por exemplo:
let person = {
firstName: 'John',
lastName: 'Doe',
age: 25,
ssn: '123-456-2356'
};
Object.keys(person).forEach(key => {
console.log(`${key}: ${person[key]}`);
});
Linguagem de código: JavaScript ( javascript )
Saída:
firstName: John
lastName: Doe
age: 25
ssn: 123-456-2356
Linguagem de código: HTTP ( http )
Object.values()
O Object.values()
pega um objeto como argumento e retorna uma matriz de valores do objeto. O Object.entries()
método está disponível desde ES7.
let person = {
firstName: 'John',
lastName: 'Doe',
age: 25,
ssn: '123-456-2356'
};
Object.values(person).forEach(value => {
console.log(`${value}`);
});
Linguagem de código: JavaScript ( javascript )
Saída:
John
Doe
25
123-456-2356
Object.entries()
O Object.entries()
pega um objeto e retorna uma matriz dos [key, value]
pares de propriedades enumeráveis com chave de string do próprio objeto.
let person = {
firstName: 'John',
lastName: 'Doe',
age: 25,
ssn: '123-456-2356'
};
Object.entries(person).forEach(([key, value]) => {
console.log(`${key}: ${value}`);
});
Linguagem de código: JavaScript ( javascript )
Saída
firstName: John
lastName: Doe
age: 25
ssn: 123-456-2356
Linguagem de código: HTTP ( http )
Object.getOwnPropertyNames()
O Object.getOwnPropertyNames()
método aceita um objeto como argumento e retorna um array de chaves do objeto, incluindo propriedades não enumeráveis, exceto aquelas que usam Símbolo.
let person = {
firstName: 'John',
lastName: 'Doe',
age: 25,
ssn: '123-456-2356'
};
Object.getOwnPropertyNames(person).forEach(key =>
console.log(`${key}: ${person[key]}`)
);
Linguagem de código: JavaScript ( javascript )
Saída:
firstName: John
lastName: Doe
age: 25
ssn: 123-456-2356
Linguagem de código: HTTP ( http )
Neste tutorial, você aprendeu várias maneiras de iterar um objeto em JavaScript.