title: What does [].forEach.call() do in JavaScript?
body: <p>I was looking at some snippets of code, and I found multiple elements calling a function over a node list with a forEach applied to an empty array.</p>
  
  <p>For example I have something like:</p>
  
  <pre><code>[].forEach.call( document.querySelectorAll('a'), function(el) {
     // whatever with the current node
  });
  </code></pre>
  
  <p>but I can't understand how it works. Can anyone explain me the behaviour of the empty array in front of the forEach and how the <code>call</code> works?</p>