起因
当一个由数组的渲染的列表,当数组的首尾颠倒,DOM是如何变化的?
我当时回答的不是特别好,所以后来专门上网研究了一下。
网上有许多介绍diff算法的文章,但是一大坨文字配上大量源码,让人实在没有看下去的欲望。于是乎,我做了这个小工具,希望大家可以轻松了解Diff更新的过程。
如何展现
旧的dom
新的dom
这个工具会逐步将Diff更新的过程,可视化的展现出来
地址
实现原理
实现的原理很简单,我自己动手实现了一个基于纯js对象的diff算法(不需要映射到浏览器的dom),diff算法会将更新中的每一个步骤的结果,保存到一个快照数组中,最后遍历这个快照数组即可。
未来
- [ ] 添加动画
- [ ] 可供网友自定义输入新旧dom的功能
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。