Liang Yichen

Programing C# & Javascript | Photographic & Cinematograpic

await 必须定义在 async 函数中.


        function AF() {

            const myPromise = new Promise((resolve, reject) => {
                setTimeout(() => {

                    printAppend(3);
                    resolve('foo');

                }, 2000);
            });

            return myPromise;
        }


        async function uaw() {

            printAppend(2);

            let _promise = await AF(); // function会立即返回

            printAppend(4);
        }


        printAppend(1);
        uaw();
        printAppend(5);

以上代码输出:1 2 5 3 4 , 其中3 和4会在5输出·之后的两秒钟后才会输出。

C# 版本的例子:C# (.Net) 中的 异步 await 执行顺序


©Liang Yichen