越来越大的元素的频率-JavaScript

假设我们有一个像这样的文字数组-

const arr = [3, 5, 5, 2, 23, 4, 7, 8, 8, 9];

我们需要编写一个JavaScript函数,该函数接受此数组和一个数字(例如n),并返回一个对象,该对象表示大于和小于n的元素数。

示例

以下是代码-

const arr = [3, 5, 5, 2, 23, 4, 7, 8, 8, 9];
const smallerLargerNumbers = (arr, num) => {
   return arr.reduce((acc, val) => {
      let { greater, smaller } = acc;
      if(val > num){
         greater++;
      };
      if(val < num){
         smaller++;
      };
      return { greater, smaller };
   }, {
      greater: 0,
      smaller: 0
   });
};
console.log(smallerLargerNumbers(arr, 3));

输出结果

这将在控制台上产生以下输出-

{ greater: 8, smaller: 1 }