Computer >> Máy Tính >  >> Lập trình >> Javascript

Sắp xếp mảng dựa trên một mảng khác trong JavaScript

Chúng tôi bắt buộc phải viết một hàm sắp xếp để sắp xếp một mảng dựa trên nội dung của anotherarray.

Ví dụ - Chúng ta phải sắp xếp mảng ban đầu sao cho các phần tử có trong mảng belowsortOrder xuất hiện ngay ở đầu mảng ban đầu và tất cả các phần tử khác phải giữ thứ tự của chúng -

const originalArray = ['Apple', 'Cat', 'Fan', 'Goat', 'Van', 'Zebra'];
const sortOrder = ['Zebra', 'Van'];

Ví dụ

const originalArray = ['Apple', 'Cat', 'Fan', 'Goat', 'Van', 'Zebra'];
const sortOrder = ['Zebra', 'Van'];
const sorter = (a, b) => {
   if(sortOrder.includes(a)){
      return -1;
   };
   if(sortOrder.includes(b)){
      return 1;
   };
   return 0;
};
originalArray.sort(sorter);
console.log(originalArray);

Đầu ra

Đầu ra trong bảng điều khiển sẽ là -

[ 'Zebra', 'Van', 'Apple', 'Cat', 'Fan', 'Goat' ]