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

Lấy n giá trị lớn nhất từ mảng trong JavaScript


Chúng ta cần viết một hàm JavaScript nhận một mảng số làm tham số đầu tiên và một số, giả sử n, làm tham số thứ hai.

Hàm sẽ chọn n số lớn nhất từ mảng và trả về một mảng mới chứa các số đó.

Ví dụ

Mã thực hiện:

const arr = [3, 4, 12, 1, 0, 5, 22, 20, 18, 30, 52];
const pickGreatest = (arr = [], num = 1) => {
  if(num > arr.length){ return []; }
  const sorter = (a, b) => b - a;
  const descendingCopy = arr.slice().sort(sorter);
  return descendingCopy.splice(0, num);
};
console.log(pickGreatest(arr, 3));
console.log(pickGreatest(arr, 4));
console.log(pickGreatest(arr, 5));

Kết quả

Kết quả trong console:

[ 52, 30, 22 ] [ 52, 30, 22, 20 ] [ 52, 30, 22, 20, 18 ]