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

จัดรูปแบบอาร์เรย์ JSON แบบไดนามิกใน JavaScript

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

const arr = [
  {"name1": "firstString"},
  {"name2": "secondString"},
  {"name3": "thirdString"},
  {"name4": "fourthString"},
  {"name5": "fifthString"},
  {"name6": "sixthString"}
];

เราต้องเขียนฟังก์ชันที่รับอาร์เรย์ของอ็อบเจกต์แบบนี้หนึ่งตัวและคืนค่าอ็อบเจกต์ที่มี property ทั้งหมดที่อยู่ในอ็อบเจกต์นั้นๆ

มาเขียนโค้ดสำหรับฟังก์ชันนี้ สามารถทำได้ผ่าน Array reduce method:

ตัวอย่างโค้ด

const arr = [
  {"name1": "firstString"},
  {"name2": "secondString"},
  {"name3": "thirdString"},
  {"name4": "fourthString"},
  {"name5": "fifthString"},
  {"name6": "sixthString"}
];

const reduceArray = arr => {
  return arr.reduce((acc, val) => {
    Object.assign(acc, val);
    return acc;
  }, {});
};

ผลลัพธ์

ผลลัพธ์ในคอนโซลจะเป็นดังนี้:

{
  name1: 'firstString',
  name2: 'secondString',
  name3: 'thirdString',
  name4: 'fourthString',
  name5: 'fifthString',
  name6: 'sixthString'
}