title: How to find and count duplicate integers in an array with javascript
body: <p>Hello I am taking an array of integers with ranging numbers from 1 - 100 and I'm counting the duplicated numbers within it. Example, array[1,1,1,1,1,100,3,5,2,5,2,23,23,23,23,23,]. Result = 1 - 5 times, 5 - 2 times, 2 - 2 times, 23 - 5 times. I cannot see how to make this work I have tried to edit this code snippet so that it counts and returns the number of duplicates of a specific integer that is a duplicate but I could not see how to do it. Please assist Thank You. </p>
  
  <p><a href="https://repl.it/@youngmaid/JS-ALGORITHMS-Counting-Duplicates" rel="nofollow noreferrer">https://repl.it/@youngmaid/JS-ALGORITHMS-Counting-Duplicates</a></p>
  
  <pre><code>//To count or reveal duplicates within an array. Using the array method of sort() is one way.
  //Sort the following array using .sort(), which put the items in the array in numerical or alphabetical order.
  //Create a new variable for the sorted array.
  //Also create a new variable for an empty array.
  //Create a loop using the length of the first, original array with an increment of "++".
  //Create an if statement that includes adding an item comparing to the index. 
  //Then push the emply array in the sorted array.
  //console log the new array.
  
  
  
  let duplicateArr = [5, 3, 7, 4, 7, 5, 3, 2, 7, 3, 2];
  let sortArr = duplicateArr.sort();
  
  let newArr = [];
  for(let i = 0; i &lt; duplicateArr.length; i++) {
    if(sortArr[i + 1] == sortArr[i]){
      newArr.push(sortArr[i]);
    }
  }
    console.log(newArr);
  
  //The other way or more detailed/reusable approach is to create a function and variable hash table. 
  //The hash table to place all the items in the array. 
  //Then create another variable placing duplicates in the array.
  //Then go through each item in the array through a for loop. (Using arr as the argument).
  //Create a conditional if/else statement.  If the item in the hash table does not exist, then insert it as a duplicate.
  
  
  function duplicates(arr) {
     let hashTable = [];
     let dups = [];
     for (var i = 0; i &lt; arr.length; i++){
       if (hashTable[arr[i].toString()] === undefined) {
         hashTable[arr[i].toString()] = true;
       } else {
          dups.push(arr[i]);
       }
     }
     return dups;
  }
  
  duplicates([3, 24, -3, 103, 28, 3, 1, 28, 24]);
  </code></pre>