- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第2章Vue项目开发ES6基础;JavaScript=ECMAScript+宿主API;二、进程与线程;每个进程都可以通过创建线程或者调用线程来完成任务。
打个比方,进程就相当于一个大学,线程就相当于大学的一个学院,一个大学可以只有一个学院也可以有多个学院,学校内部的资源学院是可以共享的。;浏览器进程;浏览器进程;浏览器的渲染进程里的线程;(1)GUI渲染线程,负责渲染浏览器页面,解析HTML、CSS,构建DOM树、构建CSSOM树、构建渲染树和绘制页面;界面需要重绘或由于某种操作引发回流时,该线程就会执行。
(2)JS引擎线程,也称为JS内核,负责解析、运行JS代码,不能和GUI渲染线程同时执行。
(3)事件触发线程,负责监听和触发事件。浏览器开启事件触发线程用来监听事件的触发,触发以后把事件处理函数里面的代码交给JS引擎线程来执行,但是JS是单线程的,事件处理函数里面的代码会添加到待处理队列的末尾,也就是等JS线程空闲以后才会执行。
(4)定时触发器线程,setInterval与setTimeout所在的线程。浏览器开启定时器线程来计时,计时时间到并触发定时,把要执行的回调函数里面的代码添加到待处理队列的末尾,等待JS线程空闲以后执行。
(5)http请求线程,在使用XMLHttpRequest对象发送http请求的时候,浏览器新开一个线程请求,检测到对象状态改变时,如果绑定了回调函数,请求线程就触发状态变更事件,将这个回调函数里面的代码添加到待处理队列的末尾。;三、JS引擎线程的单线程
;四、JS的异步编程;JavaScript=ECMAScript+宿主API;定时器(setTimeout()、setInterval())、UI交互事件(单击、双击等)、网络请求、fs文件操作、数据库操作等;异步模式API:
不会等待这个任务的结束才开始下一个任务。
当前API的执行不会阻塞后续代码的执行。
不能从返回值中拿到API的执行结果,通过回调函数的方式拿到结果。
(代码执行顺序和返回值的方式都不同)
开启过后就立即往后执行下一个任务,后续逻辑一般会通过回调函数的方式定义。;2、代码执行顺序
;console.log(task1);
setTimeout(functiontimer1(){
??console.log(task2);
},1000);
console.log(task3);
console.log(task4);;3、获取异步API中的返回值
;constp=newPromise((resolve,reject)={
??setTimeout(()={
????letflag=false;
????if(flag){
??????//异步任务成功
??????resolve(成功的数据);
????}else{
??????//异步任务失败
??????reject(报错信息)
????}
??},1000);
});
console.log(p);;newPromise();1、Promise状态变化(未暴露)
只能改变一次
pending变为fulfilledresolve()
或
pending变为rejectedreject();p;?asyncfunctionfn(){
??????return8888
??????/*returnnewPromise((resolve,reject)={
???????????????//异步任务?????
???????????})*/
?????//throw错误信息
????}
????constp=fn()
????console.log(p);return
您可能关注的文档
- 《Verilog HDL数字系统设计与应用》 课件 FPGA-第1章-硬件描述语言与可编程逻辑器件.pptx
- 《Verilog HDL数字系统设计与应用》 课件 FPGA-第2章-开发工具的介绍和使用.pptx
- 《Verilog HDL数字系统设计与应用》 课件 FPGA-第3章-Verilog HDL的基本语法.pptx
- 《Verilog HDL数字系统设计与应用》 课件 FPGA-第4章-行为描述语言.pptx
- 《Verilog HDL数字系统设计与应用》 课件 FPGA-第7章-基本时序逻辑电路的设计.pptx
- 《Verilog HDL数字系统设计与应用》 课件 PGA-第5章-基本组合逻辑电路的设计.pptx
- 《Verilog HDL数字系统设计与应用》 课件全套 叶俊明-第1--9章-硬件描述语言与可编程逻辑器件---实验指导.pptx
- 《Vue.js前端开发技术与实践(第二版)》 课件 第2章 Vue项目开发ES6基础-模块.pptx
- 《Vue.js前端开发技术与实践(第二版)》 课件 第3章 初识Vue.pptx
- 《Vue.js前端开发技术与实践(第二版)》 课件 第4章 Vue指令.pptx
- 华福证券-浙能电力-600023-火电焕新核电添翼,中来破局转型升级.pdf
- 甬兴证券-亿纬锂能-300014-公司深度报告:消费景气复苏,储能扬帆起航.pdf
- 方正证券-山推股份-000680-公司深度报告-挖掘机再添成长性,大推放量进行时.pdf
- 海通证券-家电行业专题-美国加征关税对中国家电行业的影响分析.pdf
- 信达证券-索辰科技-688507-公司首次覆盖报告:国内CAE龙头,兼具高壁垒与高成长性.pdf
- 财通证券-ETF那点事系列2-A500即将成为第二大宽基ETF.pdf
- 华龙证券-开放式基金与大类资产跟踪报告:商品与跨境基金表现较好,新发仍集中于被动指数基金.pdf
- 信达证券-青岛银行-002948-公司深度报告:区域潜力保驾护航,量质发展逆流而上.pdf
- 华鑫证券-正邦科技-002157-公司深度报告:重整归来内化双胞胎体系,合并可期迈向行业第一梯队.pdf
- 浅谈光纤通信工程施工中光缆线路的敷设 .pdf
文档评论(0)