2012-12-13 105 views
1
var document = "temp"; 

function showDocument() 
{ 
    alert(document); // temp or HTML DOM Document 
} 

它为我显示了“HTML DOM文档”,应该是这种情况。它是一个对象,保留关键字,只读对象吗?JavaScript中的文档是什么,它的范围是什么?

如果它是一个对象,它应该是可编辑的。如果它是一个保留关键字,则JavaScript应该抛出一个错误/异常。如果它是只读的,我如何修改DOM本身,只能通过document访问?

回答

4

它是全局(window)对象的只读属性。它的值是一个本地对象,代表当前HTML/XML /任何文档加载到窗口中。

要修改DOM,使用DOM manipulation APIs.

编辑 —澄清,该window对象的“文件”属性(或者,如果你愿意的话,叫“文档”全局变量)是本身不可变的,它的值不能被JavaScript改变。然而,该值是一个参考到一个对象,一个可以用各种方式变化的对象。

+0

如果文档是已读属性,我们怎么说呢, document.getElementById('someDIV')。style.background ='red'; 如果文档是只读的,我怎么能够执行这个语句。 – SHANK

+2

指向对象的只读属性(在这种情况下,您也可以说* variable *)并不意味着该对象不可变。你不能修改“指针”,但你可以修改DOM树。 – Bergi