@webe
frontend

Как развернуть объект из массива?

const arr = [{id:1,name:'foo'},{id:2,name:'bar'}]; 
const [first] = arr;
const {id} = first;


Можно как-то еще проще в современном ES? возможно что-то упустил.
arr[0].name- так нельзя)

задача: получить свойство id первого элемента массива.
  • Вопрос задан
  • 146 просмотров
Решения вопроса 1
rockon404
@rockon404
Frontend Developer
Лаконичное решение не всегда лучшее.
Демонстрация проблемы
Лучше извлекать свойство безопасно. Например так:
const id = arr[0] && arr[0].id;
Либо, если надо достать несколько свойств, что-то вроде:
const first = arr[0] || {};  // const [ first = {} ] = arr;
const { id, name } = first;

Либо, если надо прервать выполнение в случае отсутствия данных:
const first = arr[0];

if (!first) return null;

const { id, name } = first;


Само получение первого элемента массива традиционным способом, при правильном форматировании, короче деструктуризации на один символ, поэтому нет особого смысла использовать последнюю в этом кейсе.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@deworkers
Middle front-end, UI designer
arr[0]['name'] вроде так можно
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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