ECMAScript with 語句

有標籤的語句

with 語句用於設置代碼在特定對象中的做用域。 javascript

它的語法: java

with (expression) statement

例如: express

var sMessage = "hello";
with(sMessage) {
  alert(toUpperCase()); //輸出 "HELLO" }

在這個例子中,with 語句用於字符串,因此在調用 toUpperCase() 方法時,解釋程序將檢查該方法是不是本地函數。若是不是,它將檢查僞對象 sMessage,看它是否爲該對象的方法。而後,alert 輸出 "HELLO",由於解釋程序找到了字符串 "hello" 的 toUpperCase() 方法。 函數

提示:with 語句是運行緩慢的代碼塊,尤爲是在已設置了屬性值時。大多數狀況下,若是可能,最好避免使用它。 學習



1)簡要說明 
with 語句能夠方便地用來引用某個特定對象中已有的屬性,可是不能用來給對象添加屬性。要給對象建立新的屬性,必須明確地引用該對象。 

2)語法格式 
with(object instance) 

//代碼塊 

有時候,我在一個程序代碼中,屢次須要使用某對象的屬性或方法,照之前的寫法,都是經過:對象.屬性或者對象.方法這樣的方式來分別得到該對象的屬性和方法,着實有點麻煩,學習了with語句後,能夠經過相似以下的方式來實現: 
with(objInstance) 

var str = 屬性1; 
..... 
} 去除了屢次寫對象名的麻煩。 

3)舉例 
<script language="javascript"> 
<!-- 
function Lakers() { 
this.name = "kobe bryant"; 
this.age = "28"; 
this.gender = "boy"; 

var people=new Lakers(); 
with(people) 

var str = "姓名: " + name + "<br>"; 
str += "年齡:" + age + "<br>"; 
str += "性別:" + gender; 
document.write(str); 

//--> 
</script> 
代碼執行效果以下: 
姓名: kobe bryant 
年齡:28 
性別:boy this

相關文章
相關標籤/搜索