JavaScript · справочник
Object.keys(), values() и entries()
Методы Object.keys(), Object.values() и Object.entries() превращают собственные перечисляемые поля объекта в массивы.
Три представления
Keys возвращает ключи, values — значения, entries — пары [ключ, значение]. После этого доступны обычные методы массивов.
const course = { title: 'CSS', lessons: 12 };
Object.keys(course); // ['title', 'lessons']
Object.values(course); // ['CSS', 12]
Object.entries(course); // [['title', 'CSS'], ['lessons', 12]]
Перебор и обратное преобразование
Entries удобно перебирать деструктуризацией. Object.fromEntries собирает объект обратно из пар.
for (const [key, value] of Object.entries(course)) {
console.log(key, value);
}
const filtered = Object.fromEntries(
Object.entries(course).filter(([, value]) => value !== null)
);
Частые ошибки
- Ожидать унаследованные поля.
- Путать объект с массивом.
- Изменять объект во время перебора.
- Полагаться на порядок как на бизнес-логику.
Практика
Возьми объект настроек, выведи список ключей и создай новую версию без полей со значением null.
Связанные темы
Объекты · Деструктуризация · filter()