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

Trả về mảng chứa phần tử nhỏ nhất và lớn nhất trong JavaScript

Cho một mảng số, ví dụ:

const arr = [12, 54, 6, 23, 87, 4, 545, 7, 65, 18, 87, 8, 76];

Chúng ta cần viết một hàm chọn phần tử nhỏ nhất và lớn nhất từ mảng, trả về mảng hai số với nhỏ nhất ở chỉ số 0 và lớn nhất ở chỉ số 1.

Chúng ta sẽ dùng Array.prototype.reduce() để xây dựng mảng min-max như sau:

Ví dụ

const arr = [12, 54, 6, 23, 87, 4, 545, 7, 65, 18, 87, 8, 76];

const minMax = (arr) => {
  return arr.reduce((acc, val) => {
    if (val < acc[0]) {
      acc[0] = val;
    }
    if (val > acc[1]) {
      acc[1] = val;
    }
    return acc;
  }, [Infinity, -Infinity]);
};

console.log(minMax(arr));

Kết quả

Đầu ra trong console sẽ là:

[ 4, 545 ]