1. <div id="box">box</div>
    2. <script>
    3. var box = document.getElementById("box");
    4. console.dir(box);
    5. //HTMLDivElement --->HTMLElement--->Element--->Node--->EventTarget---->Object
    6. //对于函数的原型而言,他也有一个__proto__属性
    7. //之前我们对象有一个__proto__,他指向函数的原型
    8. //函数有一个prototype属性,他表示函数的原型
    9. //函数的prototype(prototype也是对象)中有 构造器、公共属性和方法、__proto__,
    10. //这个__proto__指向父亲的prototype
    11. console.log(box.__proto__ == HTMLDivElement.prototype);
    12. console.log(HTMLDivElement.prototype.__proto__ == HTMLElement.prototype);
    13. console.log(HTMLElement.prototype.__proto__ == Element.prototype);
    14. console.log(Element.prototype.__proto__ == Node.prototype);
    15. console.log(Node.prototype.__proto__ == EventTarget.prototype);
    16. console.log(EventTarget.prototype.__proto__ == Object.prototype);
    17. console.log(Object.prototype.__proto__);
    18. //在js中,其实任何对象都是Object函数的对象
    19. console.log(box instanceof Object);
    20. </script>

    image.png
    //box.proto——>HTMLDivElement.prototype
    //HTMLDivElement.prototype的proto—->HTMLElement.prototype
    //HTMLElement.prototype的proto——>Element.prototype
    //Element.prototype的proto——>Node.prototype
    //Node.prototype的proto——>EventTarget.prototype
    //EventTarget.prototype的proto——>Object.prototype
    //Object.prototype中的proto是null