From c6f78b5b3b5dd3e98ed638cff72e9123327c1eda Mon Sep 17 00:00:00 2001 From: Manuel Barzi Date: Thu, 1 Aug 2024 09:46:48 +0200 Subject: [PATCH] add promises demos #51 --- stuff/js/es6/promises.js | 51 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 stuff/js/es6/promises.js diff --git a/stuff/js/es6/promises.js b/stuff/js/es6/promises.js new file mode 100644 index 000000000..ec2a02412 --- /dev/null +++ b/stuff/js/es6/promises.js @@ -0,0 +1,51 @@ +new Promise((resolve, reject) => { + // setTimeout(() => resolve(123), 1000) + setTimeout(() => reject(123), 1000) +}) + //.then(value => console.log(value), error => console.error(error)) + .then(value => console.log(value)) + //.catch(error => console.error(error)) + .then(() => { + return new Promise((resolve, reject) => { + setTimeout(() => resolve(456), 1000) + }) + }) + .then(value => console.log(value)) + .catch(error => { + console.error(error) + + //return 789 + throw new Error('012') + }) + //.then(value => console.log(value), error => console.error(error)) + .then(value => console.log(value)) + .catch(error => console.error(error)) + .then(() => { + console.log(678) + + throw new Error('901') + }) + +// console.log(345) +// VM1316:29 345 +// undefined +// 563-10c5b65a2ff77937.js:1 123 +// window.console.error @ 563-10c5b65a2ff77937.js:1 +// overrideMethod @ console.js:288 +// (anonymous) @ VM1316:15 +// Promise.catch +// (anonymous) @ VM1316:14 +// Show 1 more frame +// Show less +// 563-10c5b65a2ff77937.js:1 Error: 012 +// at :18:15 +// window.console.error @ 563-10c5b65a2ff77937.js:1 +// overrideMethod @ console.js:288 +// (anonymous) @ VM1316:22 +// Promise.catch +// (anonymous) @ VM1316:22 +// Show 1 more frame +// Show less +// VM1316:24 678 +// VM1316:26 Uncaught (in promise) Error: 901 +// at :26:15 \ No newline at end of file