Skip to content

基本用法 ​

本节目标:理解“基本用法”的核心思路,并能把它用于实际开发或面试表达。

async函数返回一个 Promise 对象,可以使用then方法添加回调函数。

当函数执行的时候,一旦遇到await就会先返回,等到异步操作完成,再接着执行函数体内后面的语句。如: async function getStockPriceByName(name)


 `{`
    `const` `symbol` `=` `await`

getStockSymbol(name);

     `const` `stockPrice` `=` `await`

getStockPrice(symbol);

     `return`

stockPrice; } getStockPriceByName('goog').then(function

(result)


 `{`

console.log(result); });

 调用该函数时,会立即返回一个Promise对象。
下面是另一个例子,指定多少毫秒后输出一个值。
`function`

timeout(ms)


 `{`
    `return` `new`

Promise((resolve)


 `=>` `{`

setTimeout(resolve,

ms);

}); } async


 `function`

asyncPrint(value,

ms)


 `{`
    `await`

timeout(ms);

console.log(value); } asyncPrint('hello

world',

50); 由于async函数返回的是 Promise 对象,可以作为await命令的参数。所以,上面的例子也可以写成下面的形式。 async function timeout(ms)


 `{`
    `await` `new`

Promise((resolve)


 `=>` `{`

setTimeout(resolve,

ms);

}); } async


 `function`

asyncPrint(value,

ms)


 `{`
    `await`

timeout(ms);

console.log(value); } asyncPrint('hello

world',

50);

本站总访问 — 次