Skip to content

Instantly share code, notes, and snippets.

@rajatjain-21
Created December 8, 2020 17:07
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 rajatjain-21/2afee205e9cec0558acc312f944cf8d5 to your computer and use it in GitHub Desktop.
Save rajatjain-21/2afee205e9cec0558acc312f944cf8d5 to your computer and use it in GitHub Desktop.
function normalFunc(x,y,callback) {
const result = x + y;
callback(result);
}
async function run() {
const promisedFn = promisify(normalFunc);
const result = await promisedFn(4,3).then(data => data*data);
console.log(result);
}
run()
function promisify(fn) {
return (...args) => {
return new Promise((resolve) => {
function cb(val) {
resolve(val)
}
fn.apply(this, args.concat(cb));
})
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment