05 2022 档案
摘要:内存泄漏是指不再用到的内存,没有及时释放。既不能使用,又不能回收。 导致内存泄漏的几种常见情况: 1.意外形成全局变量 解决方法:加上 ‘use strict’ 启用严格模式来避免这类问题, 严格模式会阻止你创建意外的全局变量. 2.闭包 解决方法:在函数外部定义事件处理函数,解除闭包。或在闭包中,
阅读全文
摘要:回调函数(callback) setTimeout(() => { // callback 函数体 }, 1000) 优点:解决了同步的问题(整体任务执行时长); 缺点:回调地狱,不能用try catch捕获错误,不能return; 回调地狱的根本问题在于: 缺乏顺序性: 回调地狱导致的调试困难,和
阅读全文
摘要:**setTimeout:**setTimeout的回调函数放到宏任务队列里,等到执行栈清空以后 执行; **Promise:**Promise本身是同步的立即执行函数,当在executor中执行resolve或者reject的时候,是异步操作,会先执行then/catch等,当主栈完成时,才会去调
阅读全文
摘要:什么是防抖和节流? 防抖(debounce):当持续触发事件时,一定时间段内没有再触发事件,事件处理函数才会执行一次,如果设定的事件到来之前,又一次触发了事件,就重新开始延时。(简单概括:每次触发时都会取消之前的延时调用。) 节流(thorttle):当持续触发事件时,保证一定时间段内只调用一个事件
阅读全文
摘要:伪类 伪类用于当已有元素处于某种状态时,为其添加对应的样式,这个状态是根据用户行为变化而变化的。比如说:hover。它只有处于dom树无法描述的状态才能为元素添加样式,所以称为伪类。 伪元素 伪元素用于创建一些原本不在文档树中的元素,并为其添加样式,比如说:before。虽然用户可以看到这些内容,但
阅读全文