问:讲一下 diff 答:- why。为什么需要 diff,举一个简单的例子,装修,如果没有 diff,就是整个家拆了,重新来,成本太高。- what。什么是 diff,就是对比新旧两个 vdom,找出差异,可复用的节点复用,不可以的再改。- how。先简单讲了一下 vdom,起源于 snabbdom。vdom 的优势,其实最大的优势不是性能优化,而是跨平台 render。然后 vue2 中 diff 最大的特点是引入了 4 个游标,而不是完全遍历两棵树。而在 react 中则是同层比较,深度优先答:- why。为什么需要响应式,为了把 developer 的精力拉到数据端来,用阿里的话说就是降低心智负担。‘- what。什么是数据响应式,就是我改一个数据,不需要再像 jq 时代那样,去页面上修改 dom- how。 - vue2:defineProperty,这是给属性的值设置属性的,通过其 get,set 来实现,get 阶段收集依赖,set 阶段触发更新 - vue3:Proxy,与 vue2 相比,起码有几点优势: - 不需要递归 obj - 天然支持各种奇怪类型,比如 vue2 中数组需要 hack 方法...查看更多