ES6: Promise
function multiplyBy2(number) { return new Promise((resolve, reject) => { setTimeout(() => { resolve(number * 2); }, 1000); }); } multiplyBy2(100) .then(multiplyBy2) // 関数名を渡すと、引数入れて処理してくれるから便利 .then((value) => { return multiplyBy2(value); // 👆とおなじ }) .then((value) => { console.log(value); }) .catch((e) => { console.log(e); }); // 800