Cung cấp một mảng số, giả sử -
const arr = [12, 54, 6, 23, 87, 4, 545, 7, 65, 18, 87, 8, 76];
Chúng ta được yêu cầu viết một hàm chọn phần tử tối thiểu và lớn nhất từ mảng và trả về một mảng gồm hai số đó với giá trị nhỏ nhất là 0 và tối đa là 1.
Chúng tôi sẽ sử dụng phương thức Array.prototype.reduce () để tạo một mảng tối đa tối thiểu như thế này -
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));
Đầu ra
Đầu ra trong bảng điều khiển sẽ là -
[ 4, 545 ]