Computer >> Máy Tính >  >> Lập trình >> Javascript

Cách đếm số phần tử trong một mảng bên dưới / bên trên một số nhất định (JavaScript)

Hãy xem xét chúng ta có một mảng Số giống như thế này -

const array = [3.1, 1, 2.2, 5.1, 6, 7.3, 2.1, 9];

Chúng tôi bắt buộc phải viết một hàm đếm có bao nhiêu phần tử trong mảng bên dưới / bên trên một số nhất định.

Ví dụ:nếu số là 5,25, thì câu trả lời phải là 5 phần tử sau,

(3.1, 1, 2.2, 5.1, 2.1)

và 3 yếu tố bên trên nó -

(6, 7.3, 9)

Lưu ý - Nếu bất kỳ phần tử nào bằng với số đã cho, thì phần tử đó sẽ được tính ở trên số đó.

Vì vậy, hãy viết mã cho chức năng này -

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));

Đầu ra

Đầu ra trong bảng điều khiển sẽ là -

{ lower: 5, upper: 3 }
{ lower: 6, upper: 2 }
{ lower: 0, upper: 8 }