Skip to content

Instantly share code, notes, and snippets.

@briancavalier
Created March 30, 2011 13:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save briancavalier/894356 to your computer and use it in GitHub Desktop.
Save briancavalier/894356 to your computer and use it in GitHub Desktop.
Fan-out promise resolution
function join(promises) {
var promise = new Promise();
promise.then(
function(val) {
for (var i = 0; i < promises.length; i++) {
promises[i].resolve(val);
}
},
function(err) {
for (var i = 0; i < promises.length; i++) {
promises[i].reject(err);
}
},
function(update) {
for (var i = 0; i < promises.length; i++) {
promises[i].progress(update);
}
}
);
return promise;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment