Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

แปลงอาร์เรย์ JS เป็นอ็อบเจกต์ - JavaScript

สมมติว่าเรามีอาร์เรย์ของอ็อบเจกต์ดังนี้:

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

เราต้องเขียนฟังก์ชันที่รับอาร์เรย์แบบนี้และสร้างอ็อบเจกต์จากมัน โดยใช้ property id เป็น key และ name เป็น value

ผลลัพธ์สำหรับอาร์เรย์ข้างต้นควรเป็น:

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

ตัวอย่าง

โค้ดต่อไปนี้เป็นตัวอย่าง:

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));

ผลลัพธ์

จะแสดงผลในคอนโซลดังนี้:

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