1. 程式人生 > 程式設計 >javascript中的with語句學習筆記及用法

javascript中的with語句學習筆記及用法

在JS中,with 語句的作用是將程式碼的作用域設定到一個特定的物件中。其語法如下:with (expression) statement;

定義 with 語句的目的主要是為了簡化多次編寫同一個物件的工作,如下面的程式碼:

var qs = location.search.substring(1);
var hostName = location.hostname;
var url = location.href;

上面幾行程式碼都包含 location 物件。如果使用 with 語句,可以把上面的程式碼改寫成如下所示:

with(location){
 var qs = search.substring(1);
 var hostName = hostname;
 var url = href;
}

下面的程式碼使用 with 語句關聯了 location 物件。這意味著在 with 語句的程式碼塊內部,每個變數首先被認為是一個區域性變數,而如果在區域性環境中找不到該變數的定義,就會查詢

location 物件中是否有同名的屬性。如果發現了同名屬性,則以 location 物件屬性的值作為變數的值。

大量使用with非常耗效能,而且在嚴格模式下使用with語句會報錯。所以建議沒什麼 必要不要用with語句

例項擴充

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>With語句(類似於VB中的)</title>
<script type="text/javascript">
 function Student(name,age) {
  this.name = name;
  this.age = age;
 }
 var stu = new Student('羅納爾多',36);
 with (stu) {
  //With語句(類似於VB中的),用於簡化程式碼
  alert("Name:" + name + ",Age:" + age);
 }
</script>
</head>
<body>
</body>
</html>

以上就是我們小編整理分享的全部知識點內容,感謝大家的支援。