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

กำหนดค่าใหม่ให้กับรายการในอาร์เรย์หากตรงกับรายการอื่นโดยไม่วนซ้ำใน JavaScript?


สำหรับสิ่งนี้ ให้ใช้ filter() พร้อมกับ map() สมมติว่าต่อไปนี้คืออาร์เรย์ของเรา –

const studentDetails = [
   {Name: "John"},
   {Name: "David"},
   {Name: "Bob"},
   {Name: "Mike"}
]

เราจะกำหนดค่าใหม่ให้กับชื่อ "บ๊อบ" ต่อไปนี้เป็นรหัส -

ตัวอย่าง

const studentDetails = [
   {Name: "John"},
   {Name: "David"},
   {Name: "Bob"},
   {Name: "Mike"}
]
var changeName = "Bob";
studentDetails.filter((obj) => obj.Name === changeName).map((obj) =>
obj.Name = "Carol");
console.log(studentDetails);

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

node fileName.js.

ที่นี่ ชื่อไฟล์ของฉันคือ demo98.js

ผลลัพธ์

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

PS C:\Users\Amit\JavaScript-code> node demo98.js
[
   { Name: 'John' },
   { Name: 'David' },
   { Name: 'Carol' },
   { Name: 'Mike' }
]