javascript - 如何使用 JavaScript 输出数组中出现的次数

标签 javascript arrays

这里的目标是计算以下数组中出现的次数: [2,3,7,9,7,3,2]

例如,如果用户输入 7,则输出应为 [2, 4],因为 7 出现在这两个索引处。到目前为止我所拥有的看起来像这样

    var arr1 = [2,3,7,9,7,3,2];
    printArray(arr1);
    var indexOfNum = findValueInArray(arr1, num);

    if (indexOfNum === -1) {
    console.log('%d was not found in the array of random integers.', num);
   }
    else {
    console.log('%d was found in the array of random integers at index %d',num, indexOfNum);
}

我的结果是:

    arr[0] = 2
    arr[1] = 3
    arr[2] = 7
    arr[3] = 9
    arr[4] = 7
    arr[5] = 3
    arr[6] = 2
    7 was found in the array of random integers at index 2

我知道我已经很接近了,但我不确定我到底忽略了什么。谢谢大家!

最佳答案

试试这个,

var arr1 = [2,3,7,9,7,3,2];

function occurance(array,element){
  var counts = [];
    for (i = 0; i < array.length; i++){
      if (array[i] === element) {  
        counts.push(i);
      }
    }
  return counts;
}

occurance(arr1, 2); //returns [0,6]
occurance(arr1, 7); //returns [2,4]

关于javascript - 如何使用 JavaScript 输出数组中出现的次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33094088/

相关文章:

javascript - 为什么使用速记方法语法的方法不包含原型(prototype)对象

javascript - Ace-editor focus/blur 方法显然不能与 termlib.js 集成

Javascript 用缺少的对象和值填充数组

javascript - 在 Javascript 中从数组创建列表

java - 在数组上调用时,indexOf 无法解析为类型

javascript - 如何将每个 'querySelectorAll' 元素提取到 'for of' 循环中的不同变量

javascript - 使用一个 JavaScript 循环将单选按钮值与对象进行比较

javascript - HTMLCollection 的长度为 8,但记录其任何索引都返回未定义?

javascript - 如何在foreach迭代中去掉这个{},需要去掉object

arrays - PostgreSQL 将列从 varchar 数组更改为 pair(varchar, integer) 数组