如何更改网站图标,wordpress 4.5下载地址,WordPress激活邮件链接无效,linux主机做网站前言 想要学习Promise#xff0c;我们首先要了解异步编程、回调函数、回调地狱三方面知识#xff1a; 异步编程 异步编程技术使你的程序可以在执行一个可能长期运行的任务的同时继续对其他事件做出反应而不必等待任务完成。 与此同时#xff0c;你的程序也将在任务完成后显示…前言 想要学习Promise我们首先要了解异步编程、回调函数、回调地狱三方面知识 异步编程 异步编程技术使你的程序可以在执行一个可能长期运行的任务的同时继续对其他事件做出反应而不必等待任务完成。 与此同时你的程序也将在任务完成后显示结果。 举个栗子
假设现在老板让你修改一个很紧急并且很重要的代码让你下班前必须改完。并且为了督促进度老板搬了个椅子坐在一边盯着你敲。
你心里肯定已经犯嘀咕“你有这么闲吗就不能去干点其他事情吗”
老板仿佛接收到了你的心电图一样“我就在这等着你改完代码之前我哪也不去。”
这个例子中老板交给你任务后就一直等待什么都不做直到你改完这个场景就是所谓的同步。
第二天老板又交给了你一项任务。
不过这次就没那么着急啦这次老板轻描淡写“今天的这个代码不着急你写完告诉我一声就行。”
这次老板没有盯着你写代码而是转身刷视频去了你写完后简单的和老板报告了一声“我写完啦”
这个例子老板交代完任务就去忙其它事情你完成任务后简单的告诉老板任务完成这就是所谓的异步。
值得注意的是在异步这种场景下你在改代码的同时老板在刷视频这两件事在同时进行因此这就是异步比同步高效的本质。 与异步任务相对应的概念是同步任务同步任务在主线程上排队执行只有前一个任务执行完毕才能执行下一个任务。异步任务不进入主线程而是进入异步队列前一个任务是否执行完毕不影响下一个任务的执行。这里拿定时器作为异步任务举例
// setTimeout中的内容不会先被输出而是先输出异步任务之后的内容setTimeout(() {console.log(我在定时器里捏)}, 2000)console.log(我在定时器后捏~~)如果按照代码编写的顺序应该先输出我在定时器里捏再输出我在定时器后捏~~。但实际输出为 这种不阻塞后面任务执行的任务就叫做异步任务。