2019-02-24 回答虚拟 DOM(VDOM)是使用 JavaScript 普通对象来描述真实 DOM 的展现方式。这些对象具有描述真实 DOM 节点的属性,比如:节点名称,他的属性和子节点。<divclass="counter"><h1>0</h1><button>-</button><button>+</button></div> 上面的 DOM 元素使用虚拟 DOM 可以如下进行表示:{nodeName:"div"
2019-02-22 回答主要目的是避免直接操作 DOM 并使应用程序的状态能够简单的和 UI 保持同步。此外,他们还提供了创建组件的功能,在有相似功能(具有细小区别)的时候就可以进行重复使用,这样每当需要更新在多个地方重用的组件结构时就可以避免多个地方的重复修改。像 jQuery 这样对 DOM 操作的库,应用程序的数据通常保存在 DOM 自身中,通常作为类名或者 data 的属性。操作 DOM 来更新 UI 涉及许多额外的步骤并
2019-02-21 回答 this 关键字是函数执行过程中用于表示上下文的对象。传统的常规函数可以使用 call()、apply()和 bind()方法来改变他们的 this 值。箭头函数会隐式的绑定 this,因此无论其上下文是否使用 call()进行设置,他的上下文引用都是其词法环境中的上下文。这有一些关于 this 是如何工作的常见例子:Objectliterals 如果使用对象本身调用其内部函数时,该函数的 thi