计算JavaScript中小于当前数字的数字个数

我们需要编写一个包含数字数组的JavaScript函数。

该函数应基于输入数组构造一个新数组。

新数组的每个对应元素应为原始数组中的元素数小于对应元素的元素数。

例如-

如果输入数组是-

const arr = [2, 7, 3, 1, 56, 4, 7, 8];

那么输出数组应该是-

const output = [1, 4, 2, 0, 7, 3, 4, 6 ];

示例

以下是代码-

const arr = [2, 7, 3, 1, 56, 4, 7, 8];
const smallerThanCurrent = (arr = []) => {
   let { length } = arr;
   let res = Array(length).fill(0);
   for (let i = 0; i < length; i++){
      for (let j = 0; j < length; ++j){
         if (i != j && arr[i] > arr[j]){
            ++res[i];
         };
      };
   };
   return res;
};
console.log(smallerThanCurrent(arr));
输出结果

以下是控制台输出

[
   1, 4, 2, 0,

   7, 3, 4, 6
]