1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
/* await catchの練習 */ const p = console.log; const createTimeoutPromise = (ms, func) => { return new Promise((resolve, reject) => { if (20 === ms) { reject('20ミリ秒ちょうどはダメです'); } setTimeout(() => { const result = func(); resolve(result); }, ms); }); }; const asyncMain = async () => { p('=== await ======================'); p(await createTimeoutPromise(30, () => '30ミリ秒待ちました').catch((a) => a)); p(await createTimeoutPromise(20, () => '20ミリ秒待ちました').catch((a) => a)); p(await createTimeoutPromise(10, () => '10ミリ秒待ちました').catch((a) => a)); p('=== promise ===================='); createTimeoutPromise(30, () => '30ミリ秒待ちました').then(p).catch(p); createTimeoutPromise(20, () => '20ミリ秒待ちました').then(p).catch(p); createTimeoutPromise(10, () => '10ミリ秒待ちました').then(p).catch(p); }; asyncMain(); |
1 2 3 4 5 6 7 8 |
=== await ====================== 30ミリ秒待ちました 20ミリ秒ちょうどはダメです 10ミリ秒待ちました === promise ==================== 20ミリ秒ちょうどはダメです 10ミリ秒待ちました 30ミリ秒待ちました |