Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

วิธีแปลงอาร์เรย์เป็นวัตถุใน JavaScript


สมมติว่าเราต้องแปลงอาร์เรย์ต่อไปนี้เป็นอาร์เรย์ของวัตถุด้วยคีย์เป็นตัวอักษรภาษาอังกฤษ

const data = [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]];

ซึ่งสามารถทำได้โดยการทำแผนที่เหนืออาร์เรย์จริงและลดอาร์เรย์ย่อยลงในวัตถุดังตัวอย่างด้านล่าง -

ตัวอย่าง

const data = [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]];
const dataArr = data.map(arr => {
return arr.reduce((acc, cur, index) => ({
   ...acc,
      [String.fromCharCode(97 + index)]: cur
   }), Object.create({}))
});
console.log(dataArr);

ผลลัพธ์

เอาต์พุตคอนโซลสำหรับรหัสนี้จะเป็น −

[
   { a: 1, b: 2, c: 3, d: 4 },
   { a: 5, b: 6, c: 7, d: 8 },
   { a: 9, b: 10, c: 11, d: 12 }
]