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 語句關聯(lián)了 location 對象。這意味著在 with 語句的代碼塊內部,每個變量首先被認為是一個局部變量,而如果在局部環(huán)境中找不到該變量的定義,就會查詢
location 對象中是否有同名的屬性。如果發(fā)現(xiàn)了同名屬性,則以 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>
以上就是腳本之家小編整理分享的全部知識點內容,感謝大家的支持。
相關文章
JavaScript實現(xiàn)簡單動態(tài)進度條效果
這篇文章主要為大家詳細介紹了JavaScript實現(xiàn)簡單動態(tài)進度條效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-04-04淺析JavaScript作用域鏈、執(zhí)行上下文與閉包
JavaScript 采用詞法作用域(lexical scoping),函數(shù)執(zhí)行依賴的變量作用域是由函數(shù)定義的時候決定,而不是函數(shù)執(zhí)行的時候決定,通過本文給大家介紹JavaScript作用域鏈、執(zhí)行上下文與閉包相關知識,感興趣的朋友一起學習吧2016-02-02uni-app和原生小程序混合開發(fā)的具體實現(xiàn)過程
最近項目中遇到了一些功能需要與原生進行混合開發(fā),所以下面這篇文章主要給大家介紹了關于uni-app和原生小程序混合開發(fā)的具體實現(xiàn)過程,需要的朋友可以參考下2022-07-07Extjs4中tree的拖拽功能(可以兩棵樹之間拖拽) 簡單實例
這篇文章主要介紹了Extjs4中tree的拖拽功能簡單實例,有需要的朋友可以參考一下2013-12-12JavaScript Event事件學習第一章 Event介紹
Events是每一個JavaScript程序核心。什么是事件處理,它有什么問題和怎樣寫出跨瀏覽器的代碼,我將在這一章做一個概述。我也會提供一些有精彩的關于事件處理程序的細節(jié)的文章。2010-02-02