JavaScript 中 document 是 Windows 对象的属性, 表示对 Document 对象的只读引用. Document 对象是 Windows 对象的一部分, 可通过 Windows.document 属性对其进行访问.
Windows 对象
Windows 对象表示浏览器中打开的窗口.
如果文档包含框架 (frame 或 iframe 标签), 浏览器会为 html 文档创建一个 Windows 对象, 并为每个框架创建一个额外的 Windows 对象.
注释: 没有应用于 Windows 对象的公开标准, 不过所有浏览器都支持该对象.
Windows 对象描述
Windows 对象表示一个浏览器窗口或一个框架. 在客户端 JavaScript 中, Windows 对象是全局对象, 所有的表达式都在当前的环境中计算. 也就是说, 要引用当前窗口根本不需要特殊的语法, 可以把那个窗口的属性作为全局变量来使用. 例如, 可以只写 document, 而不必写 Windows.document.
同样, 可以把当前窗口对象的方法当作函数来使用, 如只写 alert(), 而不必写 Windows.alert().
除了上面列出的属性和方法, Windows 对象还实现了核心 JavaScript 所定义的所有全局属性和方法.
Windows 对象的 Windows 属性和 self 属性引用的都是它自己. 当你想明确地引用当前窗口, 而不仅仅是隐式地引用它时, 可以使用这两个属性. 除了这两个属性之外, parent 属性, top 属性以及 frame[] 数组都引用了与当前 Windows 对象相关的其他 Windows 对象.
Document 对象
每个载入浏览器的 HTML 文档都会成为 Document 对象.
Document 对象使我们可以从脚本中对 HTML 页面中的所有元素进行访问.
提示: Document 对象是 Windows 对象的一部分, 可通过 Windows.document 属性对其进行访问.
Document 对象描述
HTMLDocument 接口对 DOM Document 接口进行了扩展, 定义 HTML 专用的属性和方法.
很多属性和方法都是 HTMLCollection 对象 (实际上是可以用数组或名称索引的只读数组), 其中保存了对锚, 表单, 链接以及其他可脚本元素的引用.
这些集合属性都源自于 0 级 DOM. 它们已经被 Document.getElementsByTagName() 所取代, 但是仍然常常使用, 因为他们很方便.
write() 方法值得注意, 在文档载入和解析的时候, 它允许一个脚本向文档中插入动态生成的内容.
注意, 在 1 级 DOM 中, HTMLDocument 定义了一个名为 getElementById() 的非常有用的方法. 在 2 级 DOM 中, 该方法已经被转移到了 Document 接口, 它现在由 HTMLDocument 继承而不是由它定义了.
来源: http://www.css88.com/qa/javascript/11292.html