JavaScript создать объект из массива

Имеется такой массив:

const arr = [
  CaretDown,
  CaretUp,
  FileDownload,
  FileUpload
]

Из этого массива я хочу получить такой объект:

const obj = {
      CaretDown,
      CaretUp,
      FileDownload,
      FileUpload
}

Как выглядит console.log(obj) Подскажите как это можно сделать?


Ответы (1 шт):

Автор решения: Алексей Шиманский

Это надо?

let CaretDown = () => { console.log(1); };
let CaretUp = () => { console.log(2); };
let FileDownload = () => { console.log(3); };
let FileUpload = () => { console.log(4); };

const obj = {
      CaretDown,
      CaretUp,
      FileDownload,
      FileUpload
}


obj.CaretDown();
obj.CaretUp();
obj.FileDownload();
obj.FileUpload();


Из массива в объект:

let CaretDown = () => { console.log(1); };
let CaretUp = () => { console.log(2); };
let FileDownload = () => { console.log(3); };
let FileUpload = () => { console.log(4); };

const arr = [CaretDown, CaretUp, FileDownload, FileUpload];
let obj = {};

arr.forEach(el => {
  obj[el.name] = el;
});

obj.CaretDown();
obj.CaretUp();
obj.FileDownload();
obj.FileUpload();

→ Ссылка