gpt4 book ai didi

javascript - 什么是异步 javascript 函数的简单示例?

转载 作者:行者123 更新时间:2023-12-03 13:16:39 25 4
gpt4 key购买 nike

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the help center寻求指导。




9年前关闭。




我在这里真的很难掌握编写异步 JavaScript。您能否提供一个简单的 JavaScript 函数示例,该函数是用纯 JavaScript 异步编写的(不使用 Node.js 或 JQuery)

最佳答案

JavaScript 本身是同步的和单线程的。你不能写异步函数;普通 JS 没有计时 API。并行线程不会有副作用。

您可以做的是使用您的环境(Node.js、Webbrowser)提供的一些 API,这些 API 允许您安排异步任务 - 使用超时、ajax、FileAPI、requestAnimationFrame , nextTick 、WebWorkers、DOM 事件等等。

使用 setTimeout 的示例(由 HTML Timing API 提供):

window.setTimeout(function() {
console.log("World");
}, 1000);
console.log("Hello");

更新:由于 ES6 有作为异步原语内置到纯 JavaScript 中的 promise ,所以你可以这样做
 Promise.resolve("World").then(console.log); // then callbacks are always asynchronous
console.log("Hello");

但是,当您无法等待(例如超时)时,它们本身并没有真正的帮助。而且它们也不会改变线程模型的任何内容,所有执行都是运行到完成,没有任何事件在中途干扰。

关于javascript - 什么是异步 javascript 函数的简单示例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13806695/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com