一、 window.__proto__ === Window.prototype
api
二、 window.__proto__.__proto__ === 窗口屬性(WindowProperties)
dom
三、 window.__proto__.__proto__.__proto__ === EventTarget.prototype
prototype
四、 EventTarget.prototype.__proto__ === Object.prototype
code
五、 Event.prototype.__proto__ === Object.prototype
對象
一、 document.__proto__ === HTMLDocument.prototype
get
二、 HTMLDocument.prototype.__proto__ === Document.prototype
io
三、 Document.prototype.__proto__ === Node.prototype
console
四、 Node.prototype.__proto__ === EventTarget.prototype
function
五、 EventTarget.prototype.__proto__ === Object.prototype
class
var h = getElementById('id');
一、 h.__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
var attr = h. attributes[0];
一、 h.attributes.__proto__ === NamedNodeMap.prototype
二、 NamedNodeMap.prototype.__proto__=== Object.prototype
一、 h.attributes[0].__proto__ === Attr.prototype
二、 Attr.prototype.__proto__ === Node.prototype
三、 Node.prototype.__proto__ === EventTarget.prototype
四、 EventTarget.prototype.__proto__ === Object.prototype
一、 h.id === h.attributes.id.value === h.attributes[n].value
二、 h.className === h.attributes.class.value === h.attributes[n].value
一、Document
Document.prototype.aa = function(){console.log(1)} document.aa(); //1 document.getElementById('id').aa(); // Uncaught TypeError: h.aa is not a function
二、Element
Element.prototype.bb = function(){console.log(1)} document.bb(); // Uncaught TypeError: document.bb is not a function document.getElementById('id').bb(); // 1
三、Object
Object.prototype.cc = function(){console.log(1)} document.cc(); //1 document.getElementById('id').cc(); // 1