passing multiple arguments to promise resolution within setTimeout : <p>I was trying to follow along with the MDN <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/all" rel="noreferrer">promise.all</a> example but it seems I cannot pass more arguments to the <a href="https://developer.mozilla.org/en-US/docs/Web/API/WindowTimers/setTimeout" rel="noreferrer">setTimeout callback</a>. </p>

<pre><code>var p1 = new Promise((resolve, reject) =&gt; { 
  setTimeout(resolve, 200, 1,2,3); 
});
var p2 = new Promise((resolve, reject) =&gt; { 
  setTimeout(resolve, 500, "two"); 
});

Promise.all([p1, p2]).then(value =&gt; { 
  console.log(value);
}, reason =&gt; {
  console.log(reason)
});
</code></pre>

<p>This prints <code>[1, "two"]</code>, where I would expect <code>[1, 2, 3, "two"]</code>. Doing this with <code>setTimeout</code> without promise fulfillment works as expected</p>

<pre><code>setTimeout(cb, 100, 1, 2, 3);
function cb(a, b, c){
  console.log(a, b, c);
}
//=&gt;1 2 3
</code></pre>

<p>Why doesn't this work with the promise? How can it be made to work with the promise?</p>
