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

ยกเลิกการซ้อนอาร์เรย์ของวัตถุใน JavaScript?


หากต้องการยกเลิกการซ้อนอาร์เรย์ของวัตถุ ให้ใช้แนวคิดของ map() สมมติว่าต่อไปนี้คืออาร์เรย์ของวัตถุของเรา -

const studentDetails = [
   {
      "studentId": 101,
      "studentName": "John",
      "subjectDetails": {
         "subjectName": "JavaScript"
      }
   },
   {
      "studentId": 102,
      "studentName": "David",
      "subjectDetails": {
         "subjectName": "MongoDB"
      }
   }
];

เราจำเป็นต้องยกเลิกการซ้อน subjectName และแสดงผล ต่อไปนี้เป็นรหัส -

ตัวอย่าง

const studentDetails = [
   {
      "studentId": 101,
      "studentName": "John",
      "subjectDetails": {
         "subjectName": "JavaScript"
      }
   },
   {
      "studentId": 102,
      "studentName": "David",
      "subjectDetails": {
         "subjectName": "MongoDB"
      }
   }
];
const output = studentDetails.map(obj => ({ studentId: obj.studentId,
studentName: obj.studentName, subjectName:obj.subjectDetails.subjectName
}));
console.log(output);

ในการรันโปรแกรมข้างต้น คุณต้องใช้คำสั่งต่อไปนี้ -

node fileName.js.

ผลลัพธ์

ที่นี่ ชื่อไฟล์ของฉันคือ demo92.js สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

PS C:\Users\Amit\JavaScript-code> node demo92.js
[
   { studentId: 101, studentName: 'John', subjectName: 'JavaScript' },
   { studentId: 102, studentName: 'David', subjectName: 'MongoDB' }
]