with (object)
statements
參數
object
新的預設對象。
statements
一個或多個語句,object 是該語句的預設對象。
說明
with 語句通常用來縮短特定情形下必須寫的代碼量。在下面的例子中,請注意 Math 的重複使用:
x = Math.cos(3 * Math.PI) + Math.sin(Math.LN10)
y = Math.tan(14 * Math.E)
當使用 with 語句時,代碼變得更短且更易讀: 複製代碼 代碼如下:with (Math){
x = cos(3 * PI) + sin (LN10)
y = tan(14 * E)
}
with(),,,;
with(document)write(fileSize),write('<br>'+lastModified)
[Ctrl+A 全選 注:如需引入外部Js需重新整理才能執行]
避免使用JavaScript的With
JavaScript允許使用with關鍵字來指定某個對象的一系列屬性或者方法。比如有這樣一段代碼: 複製代碼 代碼如下:var x = document.body.scrollLeft;
document.write('text1');
document.write('text2');
document.write('text3');
如果用with的話,可以這樣寫: 複製代碼 代碼如下:with document {
var x = body.scrollLeft;
write('text1');
write('text2');
write('text3');
}
但是,這樣看似精簡代碼的方法卻會使JavaScript的執行時間增加許多。因為它會去檢查大括弧內的每個變數是否是這個對象的屬性或者方法。
所以,如果要精簡代碼的話,可以這樣寫,從而避免使用with。 複製代碼 代碼如下:var d = document;
var x = d.body.scrollLeft;
d.write('text1');
d.write('text2');
d.write('text3');