สมมติว่าเรามีสองอาร์เรย์เช่นนี้ −
const arr1 = ['d','a','b','c'] ; const arr2 = [{a:1},{c:3},{d:4},{b:2}];
เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่ยอมรับสองอาร์เรย์นี้ ฟังก์ชันควรจัดเรียงอาร์เรย์ที่สองตามองค์ประกอบของอาร์เรย์แรก
เราต้องจัดเรียงคีย์ของอาร์เรย์ที่สองตามองค์ประกอบของอาร์เรย์แรก สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
const output = [{d:4},{a:1},{b:2},{c:3}];
ตัวอย่าง
ต่อไปนี้เป็นรหัส -
const arr1 = ['d','a','b','c'] ; const arr2 = [{a:1},{c:3},{d:4},{b:2}]; const sortArray = (arr1, arr2) => { arr2.sort((a, b) => { const aKey = Object.keys(a)[0]; const bKey = Object.keys(b)[0]; return arr1.indexOf(aKey) - arr1.indexOf(bKey); }); }; sortArray(arr1, arr2); console.log(arr2);
ผลลัพธ์
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ในคอนโซล -
[ { d: 4 }, { a: 1 }, { b: 2 }, { c: 3 } ]