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

JavaScript - รวมสองอาร์เรย์ตามคุณสมบัติ id


สมมติว่าเรามีอ็อบเจ็กต์สองอาร์เรย์ อันแรกมีออบเจ็กต์ที่มีรหัสผู้ใช้และชื่อผู้ใช้

อาร์เรย์ประกอบด้วยอ็อบเจ็กต์ที่มีรหัสผู้ใช้และที่อยู่ผู้ใช้

อาร์เรย์คือ −

const arr1 =[ {"id":"123","name":"name 1"}, {"id":"456","name":"name 2"}];const arr2 =[ {"id":"123","address":"address 1"}, {"id":"456","address":"address 2"}];

เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่ใช้อาร์เรย์ดังกล่าวสองอาร์เรย์และรวมอาร์เรย์ทั้งสองนี้เข้าด้วยกันเพื่อสร้างอาร์เรย์ที่สาม

อาร์เรย์ที่สามควรมี ID ผู้ใช้ ชื่อ และอ็อบเจ็กต์ที่อยู่ของผู้ใช้ที่เกี่ยวข้อง

ตัวอย่าง

รหัสสำหรับสิ่งนี้จะเป็น −

const arr1 =[ {"id":"123","name":"name 1"}, {"id":"456","name":"name 2"}];const arr2 =[ {"id":"123","address":"address 1"}, {"id":"456","address":"address 2"}];const mergeArrays =(arr1 =[], arr2 =[]) => { ให้ res =[]; res =arr1.map(obj => { const index =arr2.findIndex(el => el["id"] ==obj["id"]); const { address } =index !==-1 ? arr2[ ดัชนี] :{}; ส่งคืน { ...obj ที่อยู่ }; }); return res;};console.log(mergeArrays(arr1, arr2));

ผลลัพธ์

และผลลัพธ์ในคอนโซลจะเป็น −

[ { id:'123', ชื่อ:'name 1', address:'address 1' }, { id:'456', ชื่อ:'name 2', ที่อยู่:'address 2' }]