สมมติว่าเรามีอาร์เรย์ค่าคงที่สองอาร์เรย์ที่มีความยาวเท่ากันดังนี้
const arr1 = ['firstName', 'lastName', 'age', 'address', 'isEmployed']; const arr2 = ['Rahul', 'Sharma', 23, 'Tilak Nagar', false];
เราต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ทั้งสองนี้
ฟังก์ชันควรสร้างออบเจกต์แมปปิงองค์ประกอบของอาร์เรย์ที่สองไปยังองค์ประกอบที่สอดคล้องกันของอาร์เรย์แรก
เราจะใช้เมธอด Array.prototype.reduce() เพื่อวนลูปผ่านอาร์เรย์ สร้างออบเจกต์
ตัวอย่างโค้ด
โค้ดสำหรับการทำงานนี้จะเป็นดังนี้
const arr1 = ['firstName', 'lastName', 'age', 'address', 'isEmployed']; const arr2 = ['Rahul', 'Sharma', 23, 'Tilak Nagar', false];
const mapArrays = (arr1 = [], arr2 = []) => {
const res = arr1.reduce((acc,elem,index)=>{
acc[elem]=arr2[index];
return acc;
},{});
return res;
};
console.log(mapArrays(arr1, arr2));ผลลัพธ์
ผลลัพธ์ในคอนโซลจะเป็นดังนี้
{
firstName: 'Rahul',
lastName: 'Sharma',
age: 23,
address: 'Tilak Nagar',
isEmployed: false
}