在 Chrome 和 Firefox 的控制台上,我可以做到
Object.getPrototypeOf(document) === HTMLDocument.prototype
并得到一个true
, 意味着它document
是HTMLDocument
类的一个实例。但在 IE 8、9 或 10 上,我会收到HTMLDocument is undefined
.
那么在 IE 8、9 和 10 上,是document
哪个类的实例?
(在 IE 11 Preview 上,它可以工作......有点奇怪,IE 10 如此现代,没有HTMLDocument
定义的标准)。
附注:我发现 IE 上未遵循的模式有些奇怪:
Object.getPrototypeOf(document) // => [object DocumentPrototype] { ... }
和
Object.getPrototypeOf(document) === Document.prototype // => false
但
Object.getPrototypeOf(document.body) // => [object HTMLBodyElementPrototype] { ... }
和
Object.getPrototypeOf(document.body) === HTMLBodyElement.prototype // => true