如何在Javascript中创建异步函数?

查看此代码:

<a href="#" id="link">Link</a>

<span>Moving</span>

$('#link').click(function () {

console.log("Enter");

$('#link').animate({ width: 200 }, 2000, function() {

console.log("finished");

});

console.log("Exit");

});

正如您在控制台中看到的那样,“动画”功能是异步的,它“分叉”了事件处理程序块代码的流程。事实上 :

$('#link').click(function () {

console.log("Enter");

asyncFunct();

console.log("Exit");

});

function asyncFunct() {

console.log("finished");

}

遵循块代码的流程!

如果我希望function asyncFunct(){}以此行为创建自己的代码,该如何使用javascript/jquery进行创建?我认为这是不使用的策略 setTimeout()

回答:

您不能创建真正的自定义异步函数。您最终将不得不利用本机提供的技术,例如:

  • setInterval
  • setTimeout
  • requestAnimationFrame
  • XMLHttpRequest
  • WebSocket
  • Worker
  • 一些HTML5 API,例如文件API,Web数据库API
  • 支持的技术 onload
  • … 很多其他的

以上是 如何在Javascript中创建异步函数? 的全部内容, 来源链接: utcz.com/qa/424389.html

回到顶部