栈内存 栈内存由编译器自动分配与释放。我们可以直接操作栈内存中的值。js中的基本数据类都有固定的大小,被分配到栈内存中。这些基本类型的值都是按值引用。将一个基本类型的值赋值给另外一个基本类型时,会为这个新的值重新创建一个值并保存在栈内存中。 堆内存 堆内存是链表结构的类型,可以动态分配大小,js引用
事件冒泡:事件开始由最具体的元素接受,然后逐级向上传播 事件捕捉:事件由最不具体的节点先接收,然后逐级向下,一直到最具体的(与上面相反) DOM事件流:三个阶段:事件捕捉,目标阶段,事件冒泡
1. 当数据发生变化时,vue是怎么更新节点的? 要知道渲染真实DOM的开销是很大的,比如有时候我们修改了某个数据,如果直接渲染到真实dom上会引起整个dom树的重绘和重排,有没有可能我们只更新我们修改的那一小块dom而不要更新整个dom呢?diff算法能够帮助我们。 我们先根据真实DOM生成一颗v
它们最主要的作用,是改变 this 的指向。在平时的工作中,除了在写一些基础类,或者公用库方法的时候会用到它们,其他时候 call 和 apply 的应用场景并不多。 不过,突然遇到的时候,需要想一下才能转过弯来。所以今天,就让我们好好地探究一下,这两个方法的区别以及一些妙用。最后,还会介绍与之用法