Computer >> Máy Tính >  >> Lập trình >> Javascript

Chuyển đổi mảng JS thành một đối tượng - JavaScript

Giả sử, chúng ta có một mảng các đối tượng như thế này -

const arr = [
   {id: 1, name: "Mohan"},
   {id: 2,name: "Sohan"},
   {id: 3,name: "Rohan"}
];

Chúng tôi được yêu cầu viết một hàm nhận một mảng như vậy và tạo một đối tượng từ nó với thuộc tính id là khóa và tên là giá trị

Đầu ra cho mảng trên phải là -

const output = {1:{name:"Mohan"},2:{name:"Sohan"},3:{name:"Rohan"}}

Ví dụ

Sau đây là mã -

const arr = [
   {id: 1, name: "Mohan"},
   {id: 2,name: "Sohan"},
   {id: 3,name: "Rohan"}
];
const arrayToObject = arr => {
   const res = {};
   for(let ind = 0; ind < arr.length; ind++){
      res[ind + 1] = {
         "name": arr[ind].name
      };
   };
   return res;
};
console.log(arrayToObject(arr));

Đầu ra

Điều này sẽ tạo ra kết quả sau trong bảng điều khiển -

{
   '1': { name: 'Mohan' },
   '2': { name: 'Sohan' },
   '3': { name: 'Rohan' }
}