Задать вопрос
@Scriptoo

Как из массива объектов получить массив уникальных ключей?

Есть массив, содержащий объекты с различными ключами:

let persons = [
  {name: "Benito", surname: "Mussolini", age : 100},
  {name: "Barak", surname: "Obema", sex : "female"},
  {name: "Iosiv", surname: "Stalone", fathername: "Vissarionovich"},
]

Как получить массив, содержащий все существующие ключи без повторений?
  • Вопрос задан
  • 389 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 2
Aetae
@Aetae Куратор тега JavaScript
Тлен
let arr = Object.keys(Object.assign({}, ...persons));
Ответ написан
Комментировать
0xD34F
@0xD34F Куратор тега JavaScript
Коротко:

const keys = [...new Set(arr.flatMap(Object.keys))];

Длинно:

const keys = arr.reduce((acc, n) => {
  for (const k in n) {
    if (n.hasOwnProperty(k) && !acc.includes(k)) {
      acc.push(k);
    }
  }

  return acc;
}, []);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы