1. 程式人生 > 其它 >promise學習---promise.then()返回的新 promise 的結果狀態

promise學習---promise.then()返回的新 promise 的結果狀態

    (1) 簡單表達: 由 then()指定的回撥函式執行的結果決定     (2) 詳細表達:       ① 如果丟擲異常, 新 promise 變為 rejected, reason 為丟擲的異常       ② 如果返回的是非 promise 的任意值, 新 promise 變為 resolved, value 為返回的值       ③ 如果返回的是另一個新 promise, 此 promise 的結果就會成為新 promise 的結果
        let p = new Promise((resolve, reject) => {
            resolve(
'ok'); }); //執行 then 方法 let result = p.then(value => { // console.log(value); //1. 丟擲錯誤 throw '出了問題'; //2. 返回結果是非 Promise 型別的物件 return 521; //3. 返回結果是 Promise 物件 return new Promise((resolve, reject) => {
// resolve('success'); reject('error'); }); }, reason => { console.warn(reason); }); console.log(result);