Cho mảng số, viết hàm đếm số phần tử nhỏ hơn và lớn hơn/giá trị cho trước.
Ví dụ với const array = [3.1, 1, 2.2, 5.1, 6, 7.3, 2.1, 9] và số 5.25: 5 phần tử nhỏ hơn (3.1, 1, 2.2, 5.1, 2.1) và 3 phần tử lớn hơn (6, 7.3, 9). Phần tử bằng số cho trước tính là lớn hơn.
Sử dụng reduce():
Ví dụ
const array = [3.1, 1, 2.2, 5.1, 6, 7.3, 2.1, 9];const countNumbers = (arr, num) => { return arr.reduce((acc, val) => { const legend = ['upper', 'lower']; const isBelow = val < num; acc[legend[+isBelow]]++; return acc; }, { lower: 0, upper: 0 });};console.log(countNumbers(array, 5.25));console.log(countNumbers(array, 7));console.log(countNumbers(array, 1));Kết quả
Đầu ra trong console sẽ là:
{ lower: 5, upper: 3 }{ lower: 6, upper: 2 }{ lower: 0, upper: 8 }