Meh*_*hdi 3 javascript asynchronous async-await
如果我们不等待异步 javascript 函数怎么办?
据我所知,像 C# 这样的一些语言不应该运行非托管的异步函数!
我想知道 JavaScript 语言是否也是如此?
var asynchronousFunction = async function() {
//...
}
function main() {
var result = true;
//...
asynchronousFunction(); // The result of this function has no effect on our output (result)
//...
return result;
}
Run Code Online (Sandbox Code Playgroud)
运行起来是一样的。(事实上,你从来都不是await一个函数,你等待它返回的 Promise。)
异步函数同步运行,直到第一个await或return在其中,此时 aPromise返回给调用者,函数的其余部分安排稍后运行。
由调用者决定对 Promise 执行某些操作(或不执行任何操作)。毕竟,您可能希望将 Promise 存储在数组中并等待大量 Promise ( Promise.all) 或对其执行一些更深奥的操作,因此 JavaScript 本身并不关心。
不过,一些足够智能的 IDE 和 linter 能够针对未处理的 Promise 发出警告,特别是如果您有足够的类型信息来执行此操作(例如通过使用 TypeScript)。
| 归档时间: |
|
| 查看次数: |
1820 次 |
| 最近记录: |