Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Sắp xếp mảng dùng hàm reduce - JavaScript


Chúng ta cần viết hàm nhận vào mảng số. Sắp xếp mảng không dùng Array.prototype.sort(), chỉ dùng Array.prototype.reduce().

Mảng ví dụ:

const arr = [4, 56, 5, 3, 34, 37, 89, 57, 98];

Ví dụ

Dưới đây là đoạn code:

// sắp xếp mảng này nhưng
// không dùng array sort function
// không dùng vòng lặp thông thường
// dùng ES6 function reduce()
const arr = [4, 56, 5, 3, 34, 37, 89, 57, 98]; 
const sortWithReduce = arr => { 
  return arr.reduce((acc, val) => { 
    let ind = 0; 
    while(ind < arr.length && val < arr[ind]){ 
      ind++; 
    } 
    acc.splice(ind, 0, val); 
    return acc; 
  }, []); 
}; 
console.log(sortWithReduce(arr));

Kết quả

Đoạn code sẽ in ra console:

[ 
  98, 57, 89, 37, 34, 
  5, 56, 
  4, 
  3 
]