首页 > 解决方案 > 打印 javascript 数组中的重复项数

问题描述

我正在尝试打印数组中重复的总数。相反,元素的总数是从数组中打印的,而不是那里的重复项

const ar = [10, 20, 20, 10, 10, 30, 50, 10, 20];

function pairs(a) {

  var pairCount = 0;

  for (var i = 0; i < ar.length; i++) {
    for (var j = i + 1; j < ar.length; j++) {
      if (ar[i] === ar[j]) {
        pairCount++;
      }

    }
  }
  return pairCount;
}
console.log(pairs(ar));

标签: javascriptnode.js

解决方案


如果您只想要重复的总数,意思是[1,1,2,2,3] // 2,那么使用 es6 的解决方案可以非常简短和甜蜜

const ar = [10, 20, 20, 10, 10, 30, 50, 10, 20];

const duplicateCount = (a) => a.length - new Set(a).size;

console.log(duplicateCount(ar));


推荐阅读