JavaScript
文章平均质量分 70
Novicee
遇到大事物,大问题,要多看,多思考。
展开
-
JavaScript学习3——页面的渲染过程
请求html文件,得到后,将二进制文件解码为文本文件。将文本文件转化为token文件,每个token都有自己的属性值,而后将token转化为节点对象,再将这些节点对象连接在一起,构成dom树。dom是浏览器自己的语言。html文件可以部分解析,在html文件解析过程中。头部遇见css文件链接时,请求下载css文件到本地。而后二进制->文本->token->cssom。由dom和cssom合作构成渲染树。页面根据渲染树的结构样式进行渲染。渲染树上的样式是页面能够呈现的内容,没有在即ht.原创 2021-09-29 16:39:31 · 1922 阅读 · 0 评论 -
JavaScript学习2——异步编程Promise&&async/await
1. 关系asyncawait是基于promise函数es6新特性。async将函数包装成promise。await等待异步执行结束。2. 用法2.1 Promisepromise对象在构建的时候会执行其参数中传入的函数excutor,此函数的执行是同步的。then中参数传递的函数的执行是异步的,then中有两个参数,分别传递两个函数,第一个函数是excutor中执行resolve(…)之后会自动执行的,第二个参数是excutor中执行reject(…)之后会自动执行的。then的回调函数中可原创 2021-09-29 15:53:21 · 175 阅读 · 0 评论 -
JavaScript学习笔记1——异步编程与事件循环机制(Event Loop)
1. 单线程js是单线程语言其异步执行其实是通过事件循环机制模拟出来的,而不是真正的开辟新的物理线程。为什么js是单线程呢浏览页面是应用需求,没有很高的实时性需求。js设计为单线程避免了页面交互时因线程执行顺序的不确定给页面渲染带来的不确定(比如一个线程删除这个组件,而另一个线程改变这个组件的样式)。但是js设计者为提高页面的渲染效率,设计了事件循环机制。将异步事件的处理函数放在任务队列中(比如setTimeout定时到期则将回调函数注册入任务队列,定时的动作是系统完成的,在倒计时期间,浏览器可以原创 2021-09-29 14:07:23 · 172 阅读 · 0 评论