Object.entries() возвращает массив пар ключ-значение из объекта. Каждая пара — это массив из двух элементов: первый элемент — ключ, второй — значение. Удобно для преобразования объекта в Map или для перебора с деструктуризацией.
const user = { name: 'Иван', age: 25 };
const entries = Object.entries(user);
console.log(entries); // [['name', 'Иван'], ['age', 25]]Object.entries() — это метод, который превращает объект в массив пар ключ-значение. Это очень удобно, когда нужно работать с объектом как с набором пар.
Возвращает массив массивов, где каждый внутренний массив содержит ключ и значение:
const user = { name: 'Иван', age: 25 };
const entries = Object.entries(user);
console.log(entries); // [['name', 'Иван'], ['age', 25]]const obj = { name: 'Иван', age: 25 };
const map = new Map(Object.entries(obj));
// Теперь можно использовать методы Mapconst user = { name: 'Иван', age: 25 };
for (let [key, value] of Object.entries(user)) {
console.log(key, value); // name Иван, age 25
}const config = {
theme: 'dark',
lang: 'ru',
notifications: true
};
const configMap = new Map(Object.entries(config));
console.log(configMap.get('theme')); // 'dark'const users = {
'1': 'Иван',
'2': 'Петр',
'3': 'Мария'
};
// Найти ключ по значению
const entries = Object.entries(users);
const found = entries.find(([key, value]) => value === 'Петр');
console.log(found[0]); // '2'const obj = { name: 'Иван' };
// Не включает унаследованные методы типа toString
console.log(Object.entries(obj)); // [['name', 'Иван']]const obj = { 3: 'три', 1: 'один', 2: 'два', a: 'буква' };
console.log(Object.entries(obj));
// [['1', 'один'], ['2', 'два'], ['3', 'три'], ['a', 'буква']]// Удобно создавать Map из объекта
const obj = { a: 1, b: 2 };
const map = new Map(Object.entries(obj));const obj = { a: 1, b: 2, c: 3 };
// Оставить только значения больше 1
const filtered = Object.fromEntries(
Object.entries(obj).filter(([key, value]) => value > 1)
);
console.log(filtered); // { b: 2, c: 3 }// ❌ Думаем, что получим объект
const obj = { a: 1, b: 2 };
const result = Object.entries(obj);
console.log(result); // Массив массивов, не объект!
// ✅ Правильное понимание
console.log(Array.isArray(result)); // true
console.log(Array.isArray(result[0])); // true// ❌ Попытка использовать с примитивами
Object.entries(42); // Ошибка!
// ✅ Только с объектами
Object.entries({ value: 42 }); // [['value', 42]]Object.entries() полезен, когда нужно работать с объектом как с набором пар. Особенно удобно при преобразовании в Map или при переборе с деструктуризацией.
Хотите больше статей для подготовки к собеседованиям? Подписывайтесь на EasyAdvice, добавляйте сайт в закладки и совершенствуйтесь каждый день 💪