对JavaScript中不同索引处的相似元素对

我们需要编写一个JavaScript函数,该函数将整数数组作为第一个也是唯一的参数。

该函数需要对数组中所有此类元素对的数量进行计数,这些元素对的数量级相等但存在于不同的索引处。

例如-

如果输入数组是-

const arr = [7, 9, 5, 7, 7, 5];

那么输出应该是-

const output = 4;

因为所需的对是[7,7],[7,7],[7,7],[5,5]

示例

以下是代码-

const arr = [7, 9, 5, 7, 7, 5];
const equalPairCount = (arr = []) => {
   if(!arr?.length){
      return 0;
   };
   const map = {}
   let count = 0;
   arr.forEach((val) => {
      if (map[val]) {
         count += map[val];
      };
      map[val] = map[val] + 1 || 1;
   });
   return count;
};
console.log(equalPairCount(arr));
输出结果

以下是控制台输出-

4

猜你喜欢