
Javascript
文章平均质量分 62
深入挖掘Javascript
Clarca
这个作者很懒,什么都没留下…
展开
-
Vue源码探究虚拟DOM
把组成一个DOM节点的必要东西通过一个JS对象表示出来,那么这个JS对象就可以用来描述这个DOM节点,我们把这个对象成为真实DOM节点的虚拟DOM节点那么为什么需要这个虚拟DOM节点?我们知道VUE是数据驱动视图的,数据变化视图随之变化,在更新视图时需要操作DOM,而操作真实DOM节点是非常耗费性能的,这是因为浏览器把DOM节点设计的非常复杂,一个真实DOM节点是非常庞大的。所以对于需要时常更新的视图我们不能每次都去操作真实DOM,这是不合理的。原创 2024-09-26 09:32:43 · 908 阅读 · 0 评论 -
Javascript中关于new操作符
new通过构造函数Person创建出来的实例可以访问到构造函数原型链中的属性(即实例与构造函数通过原型链连接了起来)4.根据构建函数返回类型做判断,如果是原始值则被忽略,如果是返回对象,需要正常处理。从上面可以发现,构造函数如果返回值为一个对象,那么这个返回值会被正常使用。在Javascript中,new操作符用于创建一个给定构造函数的实例对象。如果在构造函数中显示加上返回值,而且这个返回值是一个原始类型。可以发现,构造函数中返回一个原始值,然而这个返回值并没有作用。下面在构造函数中返回一个对象。原创 2024-04-27 13:22:31 · 744 阅读 · 4 评论 -
Javascript中关于防抖与节流
函数防抖:在一段连续操作结束后,处理回调,利用clearTimeout和setTimeout实现,函数节流,在一段连续操作中,霉一段时间只执行一次,频率较高的事件中使用来提高性能。例如:浏览器的resize、scorll、keypress、mousemove等事件在触发时,会不断调用绑定在事件上的回调函数,极大地浪费资源,降低前端性能。例如,都设置时间频率为500ms,在2秒时间内,频繁触发函数,节流每隔500ms就执行一次,防抖不管调用多少次方法在2S后只会执行一次。原创 2024-04-26 13:44:10 · 471 阅读 · 3 评论 -
Javascript关于类型转换
在Javascript中有六种简单数据类型:undefined、null、boolean、string、number、symbol,以及引用类型:Object。虽然变量的数据类型是不确定的,但是对各种运算符对数据类型是有要求的,如果运算的类型与预期不符合,就会触发类型转换机制。从上面可以看到,Number转换的时候是很严格的,只要有一个字符无法转换成数值,整个字符串就会被转为NaN。相比于Number,就没那么严格 了,parseInt函数逐个解析字符,遇到不能转换的字符就停下来。1.比较运算(==、!原创 2024-04-24 12:57:50 · 399 阅读 · 4 评论 -
Javascript中对闭包的理解以及使用场景
一般函数的词法环境在函数返回后就被销毁,但是闭包会保存对创建时所在词法环境的引用,即便创建时所在的执行上下文被销毁,但创建时所在词法环境依然存在,以达到延长变量生命周期的目的。是维护他们各自的独立性的,每次调用其中一个计数器时,通过改变这个变量的值,会改变这个闭包的词法环境,不会影响另一个闭包中的变量。中,每当创建一个函数,闭包就会在函数创建的同时被创建出来,作为函数内部与外部链接起来的一座桥梁。例如计数器,延迟调用,回调等闭包的应用,其核心思想还是创建私有变量和延长变量的生命周期。原创 2024-04-23 08:49:39 · 387 阅读 · 1 评论