SOURCE

function fetch(){
    return new Promise((resolve, reject) => {
        setTimeout(() => {
            console.log("在这里执行任何异步操作")
            // resolve("在这里把这个promise需要返回的值返回")
            reject("这下好了,竟然没请求到。。。")
        })
    })
}

// resolve状态处理
// fetch()
//     .then(data => console.log(data) )

// reject状态处理--->如果是reject则进入第二个回调函数中
// fetch()
//     .then(
//         ()=>{}, 
//         reason => console.log(reason)
//     )

// reject的第二种处理方式
// fetch()
//     .then(
//     )
//     // 如果有catch,则进入catch中进行处理
//     .catch(reason => console.log(reason))

// reject两种处理方式结合使用
fetch()
    .then(
        // 第一个函数接收成功
        () => {},
        // 第二个函数接收reject
        reason => console.log(reason)
    )
    // .catch接收resolve
    .catch(
        reason => console.log(reason + ".catch")
    )

// 由此可知,当第一个.then里面的存在第二个参数的时候,reject的结果进入第二个参数(函数)
// 否则,进入.catch,不能同时进入
console 命令行工具 X clear

                    
>
console