Callback to Promise
by clarmond
JavaScript
function doubleIt(arg, callback) {
result = arg * 2;
callback(null, result);
}
doubleIt(10, (err, result) => { console.log(`result = ${result}`); });
async function doubleItAsync(arg) {
return new Promise((resolve) => {
doubleIt(arg, (err, result) => {
if (err) {
reject(err);
return;
}
resolve(result);
});
});
}
doubleItAsync(20)
.then((result) => { console.log(`result = ${result}`); })
.catch((err) => { console.log('Error', err); })
async function test(arg) {
const results = await doubleItAsync(arg);
return results;
}
const results = test(40);
console.log(`await results = ${results}`);