03 2021 档案

摘要:首先清楚防抖节流的概念 防抖: 高频率事件在操作结束只执行最后一次 节流: 高频率事件某一段时间执行一次 防抖实现 function debounce(fn, time) { let timer return function(){ var _that = this var arg = argume 阅读全文
posted @ 2021-03-29 17:59 盐焗小羊腿 阅读(52) 评论(0) 推荐(0)
摘要:你知道reduce如何实现的吗?今天一点一点重写reduce方法,要知道如何实现前提知道如何调用,一个简单地求和方法 var arr = [1,2,3] arr.reduce((prev, item) => prev + item, 10) 暂时先不考虑第二个参数,重写数组原型上的reduce方法 阅读全文
posted @ 2021-03-29 17:26 盐焗小羊腿 阅读(1833) 评论(0) 推荐(0)
摘要:谈起var, let都知道作用域和变量提升两个区别,你知道他们的底层原理吗? 摘要: var: 当前作用域遇到var关键字会在任何语句执行前都已经完成了声明和初始化,这就是会在声明之前输出变量会得到undefined。解析到var这一行会赋值 let: 当前作用域遇到let关键字会在任何语句执行之前 阅读全文
posted @ 2021-03-25 18:54 盐焗小羊腿 阅读(254) 评论(0) 推荐(0)
摘要:图解 1.页面中的DOM跟虚拟DOM是一一对应的 2.数据更新会通过数据跟缓存的抽象语法树AST生成新的虚拟dom ->VNode 3.update里通过diff算法对比新旧虚拟dom后更新旧的虚拟dom后再跟新页面(白话: 先遍历旧的Vnode的所有属性,看新的Vnode里面有没有这个值,有的话进 阅读全文
posted @ 2021-03-03 16:43 盐焗小羊腿 阅读(110) 评论(0) 推荐(0)