關於Promise的異步依次函數調用

在Promise中async用於定義一個異步函數(可不寫),該函數返回一個Promise。
若是async函數返回的是一個同步的值,這個值將被包裝成一個理解resolve的Promise,
等同於 return Promise.resolve(value),便可依次完成相關異步操做.
let timer = async function timer() {
        return new Promise((reslove, reject) => {
            setTimeout(() => {
                reslove('a');
            }, 1000);
        })
        }
        timer().then(result => {
        setTimeout(()=>{
                console.log(result+1)
                return login(result+1); 
            },2000)
        }).catch(err => {
        console.log(err.message);
        })
    
        let login = async function login(data){
                setTimeout(()=>{
                    console.log(data+1)
                        return login1(data+1); 
                    },2000)
                };
        let login1 = async function login1(data){
            setTimeout(()=>{
                return console.log(data+2); 
            },2000)
        };
相關文章
相關標籤/搜索