4

I need to know if an element is in array twice or many time.

var arr = [elm1,elm2,elm3,elm3,elm4,elm5,elm5,elm5,elm6,elm7] ;
if(elm is in array by many time ){
      // do some code with this element
}else{
      // other stuff ;;
}

Any suggestions ?

Soptareanu Alex
  • 4,846
  • 4
  • 15
  • 15

2 Answers2

29

The countInArray function may be an option for you

function countInArray(array, what) {
    return array.filter(item => item == what).length;
}

Or something like this, this may be better for you to understand the code and adjust somethings where you want to! :

var list = [2, 1, 4, 2, 1, 1, 4, 5];  

function countInArray(array, what) {
    var count = 0;
    for (var i = 0; i < array.length; i++) {
        if (array[i] === what) {
            count++;
        }
    }
    return count;
}

countInArray(list, 2); // returns 2
countInArray(list, 1); // returns 3
Anna Jeanine
  • 3,975
  • 10
  • 40
  • 74
0
function check(){
var arr =['1','2','3','3','4'];
  for (i=0; i<arr.length;i++){
    for (x=0;x<arr.length;x++){
      if(arr[i]==arr[x] && i != x){
        console.log('SAME ones in ARRAY: '+arr[i]);
      }else console.log('no same ones');
    }
  }
}
BatOOn
  • 131
  • 8