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

การจัดเรียง Array ตามอาร์เรย์อื่น JavaScript


สมมติว่าเรามีสองอาร์เรย์เช่นนี้ −

const input =['S-1','S-2','S-3','S-4','S-5','S-6','S-7',' S-8'];const sortingArray =["S-1", "S-5", "S-2", "S-6", "S-3", "S-7", "S-4" ","S-8"];

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

ฟังก์ชันควรจัดเรียงองค์ประกอบของอาร์เรย์แรกตามตำแหน่งในอาร์เรย์ที่สอง

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

ตัวอย่าง

const input =['S-1','S-2','S-3','S-4','S-5','S-6','S-7',' S-8'];const sortingArray =["S-1", "S-5", "S-2", "S-6", "S-3", "S-7", "S-4" ", "S-8"];const sortByReference =(arr1 =[], arr2 =[]) => { const sorter =(a, b) => { const firstIndex =arr2.indexOf (a); const วินาทีดัชนี =arr2.indexOf(b); ส่งคืน firstIndex - secondIndex; }; arr1.sort(sorter);};sortByReference(อินพุต, sortingArray); console.log(อินพุต);

ผลลัพธ์

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

<ก่อนหน้า>['S-1','S-5','S-2','S-6','S-3','S-7','S-4','S-8 ']