JavaScript ES2017: Aprenda Object.keys, Object.values e Object.entries

Objetos no JavaScript Um objeto nada mais é do que uma coleção de dados armazenados em pares de chave e valor. Com o ES2017 (ES8), o objeto global Object...

Objetos no JavaScript

Um objeto nada mais é do que uma coleção de dados armazenados em pares de chave e valor.

Com o ES2017 (ES8), o objeto global Object ganhou dois novos métodos super úteis: Object.values() e Object.entries(). Vamos aproveitar para relembrar também o Object.keys(), que já existia antes.


Exemplo prático

Vamos criar um objeto simples com informações sobre uma pessoa:

const pessoa = {
  nome: 'Cah',
  idade: 31,
  sexo: 'feminino'
}

Nesse exemplo:

  • nome, idade e sexo são as chaves
  • 'Cah', 31 e 'feminino' são os valores

Agora, vamos brincar um pouco com esse objeto. Bora lá? 🙂


Object.keys()

O método Object.keys() retorna todas as chaves de um objeto.

Object.keys(pessoa);
// [ 'nome', 'idade', 'sexo' ]

Esse método é ótimo para iterar sobre propriedades de um objeto ou transformar suas chaves em um array.


Object.values()

Já o método Object.values() retorna todos os valores do objeto:

Object.values(pessoa);
// [ 'Cah', 31, 'feminino' ]

Perfeito para quando você só precisa acessar os dados sem se preocupar com as chaves.


Object.entries()

E se a gente quiser ambos — chaves e valores?
O Object.entries() retorna um array de pares [chave, valor]:

Object.entries(pessoa);
// [ [ 'nome', 'Cah' ], [ 'idade', 31 ], [ 'sexo', 'feminino' ] ]

Esse formato é excelente para usar com métodos de array, como map() ou forEach().


Beijos, até a próxima 😉