编写一下代码来看一下两者的异同:

<body>    <div id="demo"></div>    <!-- 引入react外围库 -->    <script type="text/javascript" src="js/react.development.js"></script>    <!-- 引入react-dom,用于反对react操作dom -->    <script type="text/javascript" src="js/react-dom.development.js"></script>    <!-- 引入babel,用于将jsx转为js -->    <script type="text/javascript" src="js/babel.min.js"></script>    <script type="text/babel">        // 创立一个虚构dom        const VDOM =(            <h1 id="title">              <span>Hello,React</span>              </h1>            )        // 获取实在dom        const TDOM= document.getElementById('demo');                console.log(typeof VDOM);        console.log(typeof TDOM);        console.log((typeof VDOM) === (typeof TDOM));        console.log(`虚构DOM:`,VDOM);        console.log(`实在DOM:`, TDOM);        debugger                        </script></body>

输入:

能够看出虚构DOM和实在DOM一样实质是Object类型对象

两者具体构造:


显然实在DOM比虚构DOM身上多很多货色,这是因为虚构DOM是React外部应用,外面次要蕴含React须要的内容,而无关货色被去除。