<"变动后文本">">
美文网首页
vue-虚拟DOM理解

vue-虚拟DOM理解

作者: 6e5e50574d74 | 来源:发表于2018-11-06 15:14 被阅读0次
    1.性能损耗原理
 var box = document.querySelector('.box') ;
    console.time('temp')
        var num = 1 ;
        var _num = 1 ;
        box.innerHTML = num ;
        for( var i = 0 ; i < 10000 ; i++ ){
            var box = document.querySelector('.box') ;
            _num  ++  ;
            box.innerHTML = _num ;
        }
    console.timeEnd('temp')  // 80
        console.time('temp')
            var num = 0 ;
            for( var i = 0 ; i <= 10000 ; i++ ){
                ++num ;
            }
            box.innerHTML = num ;
        console.timeEnd('temp') //0.8
    2.虚拟DOM的使用
<body>
    <div class="box">
       <div class="content">
           <ul class="list">

           </ul>
           <p>
                2
           </p>
       </div>
    </div>
</body>
<script>
1.生成DOM树
 var vDom = {
            tag:'div',
            attr:{
                className:'box'
            },
            content:[
                {
                    tag:'div',
                    attr:{
                        className:'content'
                    },
                    content:[
                        {
                            tag:'ul',
                            attr:{
                                className:'list'
                            }
                        },
                        {
                            tag:'p',
                            content:2
                        }
                    ]
                }
            ]
        }
2.页面渲染
var data = []
3.改变数据
data.push('zsq')
data.push('zsq')
data.push('zsq')
4.重新生成DOM树 
var vDom = {
                tag:'div',
                attr:{
                    className:'box'
                },
                content:[
                    {
                        tag:'div',
                        attr:{
                            className:'content'
                        },
                        content:[
                            {
                                tag:'ul',
                                attr:{
                                    className:'list'
                                },
                                content:[
                                    {
                                        tag:'li',
                                        content:'zsq'
                                    },
                                    {
                                        tag:'li',
                                        content:'zsq'
                                    },
                                    {
                                        tag:'li',
                                        content:'zsq'
                                    }
                                ]
                            },
                            {
                                tag:'p',
                                content:2
                            }
                        ]
                    }
                ]
            }
5. 将两次的vDom进行对比,发现有不同的地方
6. 根据(diff算法) 将不同的渲染出来,一样的地方不做任何改变 

增强训练查阅diff的用法
1.用来比较两个文本文件之间的差异
$diff<"变动前文本"><"变动后文本">

相关文章

  • vue-虚拟DOM理解

    增强训练查阅diff的用法1.用来比较两个文本文件之间的差异$diff<"变动前文本"><"变动后文本">

  • 理解虚拟 DOM

    DOM 和 Virtual DOM DOM:Document Object Model 把文档变成对象的模型在没有...

  • 虚拟DOM理解

    1.Virtual DOM是一个基本的JavaScript对象,也是整个Virtual DOM树的基本。 2.Ja...

  • 理解虚拟 DOM

    DOM 和虚拟 DOM 定义 从最原始定义来讲,DOM 是用于访问和处理 HTML 和 XML 文档的 API。通...

  • Virtual DOM

    对 virtual DOM 的理解 React.createElement 函数所返回的就是一个虚拟 DOM 虚拟...

  • render

    react中有一个名词叫做虚拟DOM(virtual DOM),实质上就是对象。我对此的理解就是,先使用虚拟DOM...

  • 虚拟DOM/DOM DIFF理解

    因为React、Vue框架的出现,页面渲染采用了更高效的虚拟DOM。 一个dom元素中有许多属性,操作dom是很耗...

  • 学习笔记(十六)Vue.js源码剖析 - 虚拟DOM

    Vue.js源码剖析 - 虚拟DOM 虚拟DOM概念回顾 什么是虚拟DOM? 虚拟DOM(Virtual DOM)...

  • 理解虚拟 DOM ,React 选择它是为了性能吗?

    虚拟 DOM 是什么 虚拟 DOM 是 JS 对象 虚拟 DOM 是对真是 DOM 的描述 虚拟 DOM 的本质是...

  • Vue.js 源码剖析-虚拟 DOM

    什么是虚拟DOM 虚拟 DOM(Virtual DOM) 是使用 JavaScript 对象来描述 DOM,虚拟 ...

网友评论

      本文标题:vue-虚拟DOM理解

      本文链接:https://www.haomeiwen.com/subject/ukhhtqtx.html