什麽是Promise
Promise 對象用于表示一個異步操作的最終完成 (或失敗), 及其結果值.
演示最簡單的例子1
// 右鍵審查元素, 點擊console 將下方代碼粘貼你將會看到輸出如下
// then: 我成功了
const promise1 = new Promise((resolve, reject) => {
setTimeout(() => {
resolve('我成功了');
}, 300);
});
promise1
.then(str => console.log('then: ', str))
.catch(err => console.error('catch: ', err)); // 這一步是不會執行的
演示最簡單的例子2
// 右鍵審查元素, 點擊console 將下方代碼粘貼你將會看到輸出如下
// catch: 我失敗了
const promise1 = new Promise((resolve, reject) => {
setTimeout(() => {
reject('我失敗了');
}, 300);
});
promise1
.then(str => console.log('then: ', str)) // 這一步是不會執行的
.catch(err => console.error('catch: ', err));
日常我的使用方式
(async () => {
await test()
.then(e => console.log(e))
.cacht(err => console.log(err))
function test() {
return new Promise((resolve, reject) => {
// ....某代碼
setTimeout(() => {
reject('我失敗了');
}, 300);
});
}
});