- From: Tab Atkins Jr. <jackalmage@gmail.com>
- Date: Fri, 14 Jun 2013 17:51:45 +0200
- To: Tetsuharu OHZEKI <saneyuki.snyk@gmail.com>
- Cc: WHATWG <whatwg@lists.whatwg.org>
On Fri, Jun 14, 2013 at 5:36 PM, Tetsuharu OHZEKI <saneyuki.snyk@gmail.com> wrote: > 2013/6/15 Tab Atkins Jr. <jackalmage@gmail.com>: >> On Fri, Jun 14, 2013 at 5:00 PM, Tetsuharu OHZEKI >> <saneyuki.snyk@gmail.com> wrote: >> If you check out the spec, Promise.any() runs down its list of >> arguments in order, giving them the ability to resolve the returned >> promise. So if several of them are already resolved, the first one in >> argument order is what gets used - the rest of them *try* to fulfill >> the promise, but it's already been resolved, so it doesn't do >> anything. > > Oh, thank you! > I confused the spec description... I get the point by your comment. > > So the following is confirmation: > * `Promise.any()`'s fulfillCallback is called once when the one in > argument order has been resolved. > * If the first one in argument order has been resolved, its state will > decide the state of the promise returned from `Promise.any()`. > * Values of resolved promises in argument order are passed to > `Promise.any()`'s fulfillCallback. Promise.any() only passes the *first* argument's fulfill value to its callback, not all of them (even if it was called with several already-fulfilled arguments). Otherwise, you're right. ~TJ
Received on Friday, 14 June 2013 15:52:32 UTC