如何使用 Promise
Promise 是一個非同步操作的物件。他可以讓你在某段程式結束後對應結果做不同的事情。
使用方式有兩種,一種是物件,另一種是包裝成函式。
1. 物件
2. 函式
使用方式有兩種,一種是物件,另一種是包裝成函式。
1. 物件
var promise1 = new Promise(function (resolve, reject) {
// do something
// return resolve(successMessage); // 成功
// or
// return reject(errorMessage); // 失敗
setTimeout(function() {
resolve('success');
// reject('error');
}, 1000);
});
promise1.then(function (successMessage) {
// 成功要做的事情
console.log(successMessage);
}).catch(function (errorMessage) {
// 失敗要做的事情
console.log(errorMessage);
});
// 執行 promose
promise1;
2. 函式
function myPromiseFunction(value) {
return new Promise(function (resolve, reject) {
// do something
// return resolve(successMessage); // 成功
// or
// return reject(errorMessage); // 失敗
console.log(value);
setTimeout(function() {
resolve('success');
// reject('error');
}, 1000);
});
};
myPromiseFunction('test').then(function (successMessage) {
// 成功要做的事情
console.log(successMessage);
}).catch(function (errorMessage) {
// 失敗要做的事情
console.log(errorMessage);
});
留言
張貼留言