title: Finding matches between multiple JavaScript Arrays
body: <p>I have multiple arrays with string values and I want to compare them and only keep the matching results that are identical between <strong>ALL</strong> of them.</p>
  
  <p>Given this example code:</p>
  
  <pre><code>var arr1 = ['apple', 'orange', 'banana', 'pear', 'fish', 'pancake', 'taco', 'pizza'];
  var arr2 = ['taco', 'fish', 'apple', 'pizza'];
  var arr3 = ['banana', 'pizza', 'fish', 'apple'];
  </code></pre>
  
  <p>I would like to to produce the following array that contains matches from all given arrays:</p>
  
  <pre><code>['apple', 'fish', 'pizza']
  </code></pre>
  
  <p>I know I can combine all the arrays with <code>var newArr = arr1.concat(arr2, arr3);</code> but that just give me an array with everything, plus the duplicates.  Can this be done easily without needing the overhead of libraries such as underscore.js?</p>
  
  <p>(Great, and <em>now</em> i'm hungry too!)</p>
  
  <p><strong>EDIT</strong> I suppose I should mention that there could be an unknown amount of arrays, I was just using 3 as an example.</p>