Esta página foi traduzida do inglês pela comunidade. Saiba mais e junte-se à comunidade MDN Web Docs.

View in English Always switch to English

Object.fromEntries()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨janeiro de 2020⁩.

O método Object.fromEntries() transforma uma lista de pares chave-valor em um objeto.

Experimente

const entries = new Map([
  ["foo", "bar"],
  ["baz", 42],
]);

const obj = Object.fromEntries(entries);

console.log(obj);
// Expected output: Object { foo: "bar", baz: 42 }

Sintaxe

Object.fromEntries(iterable);

Parâmetros

iterable

Um iterável como Array ou Map ou qualquer outro objeto que implemente o protocolo iterável.

Valor de retorno

Um novo objeto com suas propriedades definidas pelas entradas fornecidadas pelo iterável.

Descrição

O método Object.fromEntries() recebe uma lista de pares chave-valor e retorna um novo objeto cujas propriedades foram definidas pelas entradas da lista. O parâmetro iterable deve ser um objeto que implemente o método @@iterator, que retorne um objeto iterador que produza um objeto array-like de dois elementos, onde o primeiro será a chave da propriedade e o segundo será o valor associado à chave.

Object.fromEntries() faz o inverso de Object.entries().

Exemplos

Convertendo um Map em um Object

Com o método Object.fromEntries, é possível fazer a conveeção de um Map em um Object:

js
const map = new Map([
  ["foo", "bar"],
  ["baz", 42],
]);
const obj = Object.fromEntries(map);
console.log(obj); // { foo: "bar", baz: 42 }

Convertendo um Array em um Object

Com o método Object.fromEntries, é possível converter um Array em um Object:

js
const arr = [
  ["0", "a"],
  ["1", "b"],
  ["2", "c"],
];
const obj = Object.fromEntries(arr);
console.log(obj); // { 0: "a", 1: "b", 2: "c" }

Transformações de objetos

Com o método Object.fromEntries, seu inverso Object.entries(), e os métodos para manipulação de arrays, é possível fazer transformações em objetos como por exemplo:

js
const object1 = { a: 1, b: 2, c: 3 };

const object2 = Object.fromEntries(
  Object.entries(object1).map(([key, val]) => [key, val * 2]),
);

console.log(object2);
// { a: 2, b: 4, c: 6 }

Especificações

Specification
ECMAScript® 2026 Language Specification
# sec-object.fromentries

Compatibilidade com navegadores

Veja Também