Skip to content

Instantly share code, notes, and snippets.

@domenic
Forked from herzi/params.js
Last active August 29, 2015 14:05
Show Gist options
  • Save domenic/2884a5c9ce06fb016aa0 to your computer and use it in GitHub Desktop.
Save domenic/2884a5c9ce06fb016aa0 to your computer and use it in GitHub Desktop.
/**
* Turns: {
* keyOne: promiseOne,
* keyTwo: promiseTwo
* } into {
* keyOne: resolutionOne,
* keyTwo: resolutionTwo
* }
*
* (To avoid messing around with unclear array indices when calling different
* kinds of async ops; e.g. different database queries and some file system call)
*/
function params(object) {
var keys = Object.keys(object);
return Q.all(keys.map(function (key) {
return object[key];
})).then(function (values) {
var result = {};
for (var i = 0; i < keys.length; i += 1) {
result[keys[i]] = values[i];
}
return result;
});
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment