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 |
'use strict'; const p = console.log; const createPromise = (ms, callback, errMsg = null) => { return new Promise((resolve, reject) => { if (errMsg) { reject(errMsg); } setTimeout(() => { const result = callback(); resolve(result); }, ms); }); }; createPromise(17, () => '17ミリ秒待ちました') .then(p) .catch(p); createPromise(5, () => '5ミリ秒待ちました') .then(p) .catch(p); createPromise(12, () => '12ミリ秒待ちました', '12ミリ秒は待てません!') .then(p) .catch(p); |
1 2 3 |
12ミリ秒は待てません! 5ミリ秒待ちました 17ミリ秒待ちました |