0
次のコードでは、2つ目のPromise、すなわち、return asyncAdd(res, 32);
が指定されたエラーをスローする間に、2つのJavaScriptプロミスをチェーン化しています。しかし、resolve()
のテンプレートリテラルを使用しないことを選択した場合、つまりresolve(`Result for ${a} + ${b}\t= ${a + b}`);
の代わりにresolve(a + b);
を使用すると、テンプレートが実行されます。JavaScriptプロミスチェーン - テンプレートリテラルの問題
テンプレートのリテラルにステートメントを保持しても、コードが正常に実行されていますか?
ご迷惑をおかけして申し訳ございません。質問を投稿するのは初めてです。おかげ
let asyncAdd = (a, b) => {
return new Promise((resolve, reject) => {
setTimeout(() => {
if (typeof a === 'number' && typeof b === 'number') {
resolve(`Result for ${a} + ${b}\t= ${a + b}`);
} else {
reject(Error('Parameters must be numbers'));
}
}, 1500);
});
};
asyncAdd(58, 12)
.then(res => {
console.log(res);
return asyncAdd(res, 32);
})
.then(res => {
console.log(`The result should be `, res);
})
.catch(err => {
console.error(err);
});
。 – Eazy