สมมติว่าต่อไปนี้คืออาร์เรย์ของเรา –
var details = [ { studentName: "John", studentMarks: [78, 98] }, { studentName: "David", studentMarks: [87, 87] }, { studentName: "Bob", studentMarks: [48, 58] }, { studentName: "Sam", studentMarks: [98, 98] }, ]
เราจำเป็นต้องลบค่าคุณสมบัติที่ซ้ำกันเช่น 87 กำลังทำซ้ำด้านบน เราจำเป็นต้องลบมันออก
สำหรับสิ่งนี้ ให้ใช้แนวคิดของ map()
ตัวอย่าง
ต่อไปนี้เป็นรหัส -
var details = [ { studentName: "John", studentMarks: [78, 98] }, { studentName: "David", studentMarks: [87, 87] }, { studentName: "Bob", studentMarks: [48, 58] }, { studentName: "Sam", studentMarks: [98, 98] }, ] details.map(tempObj => { if (typeof (tempObj.studentMarks) == 'object') { tempObj.studentMarks = [... new Set(tempObj.studentMarks)] if (tempObj.studentMarks.length == 1) { tempObj.studentMarks = tempObj.studentMarks[0] } } }); console.log(details);
ในการรันโปรแกรมข้างต้น คุณต้องใช้คำสั่งต่อไปนี้ -
node fileName.js.
ที่นี่ ชื่อไฟล์ของฉันคือ demo292.js
ผลลัพธ์
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้บนคอนโซล -
PS C:\Users\Amit\javascript-code> node demo292.js [ { studentName: 'John', studentMarks: [ 78, 98 ] }, { studentName: 'David', studentMarks: 87 }, { studentName: 'Bob', studentMarks: [ 48, 58 ] }, { studentName: 'Sam', studentMarks: 98 } ]