干熟妇在线视频午夜剧场一级A级|99成人香视频日本两性激情视频|久久 午夜福利无码精品人妻一区|热久久超碰精品精品少妇一区二区|五月天综合在线国产一区免费视频|亚洲成人中心热re久久99|亚洲国产怡红院丁香五月综合h|玖玖九久久久午夜射精视频

十年專注于品牌網站建設 十余年專注于網站建設_小程序開發(fā)_APP開發(fā),低調、敢創(chuàng)新、有情懷!
南昌百恒網絡微信公眾號 掃一掃關注
小程序
tel-icon全國服務熱線:400-680-9298,0791-88117053
掃一掃關注百恒網絡微信公眾號
掃一掃打開百恒網絡微信小程序

百恒網絡

南昌百恒網絡

ECMAScript 1ebel語句、break和continue語句、with語句

百恒網絡 2012-02-27 5326

1. 1ebel語句

使用label語句可以在代碼中添加標簽,以便將來使用。以下是label語句的語法:

label: statement

下面是一個示例:

start: for(var i=0; i alert (i);

}

這個例子中定義的start櫟簽可以在將來由break或continue語句引用。加標簽的語句一般都要與for語句等循環(huán)語句配合使用。

2. break和continue語句

break和continue語句用于在循環(huán)中精確地控制代碼的執(zhí)行。其中,break語句會立即退出循環(huán),強制繼續(xù)執(zhí)行循環(huán)后面的語句。而continue語句雖然也是立即退出循環(huán),但退出循環(huán)后會從循環(huán)的頂部繼續(xù)執(zhí)行。請看下面的例子:

var num=O;

for (var i=l; i<10; 1++) {

if (i%5==O) {

break;

}

num++;

}

alert (num); //4

這個例子中的for循環(huán)會將變量i由1遞增至10。在循環(huán)體內,有一個if語句檢查i的值是否可以被5整除(使用求模操作符)。如果是,則執(zhí)行break語句退出循環(huán)。另一方面,變量num從0開始,用于記錄循環(huán)執(zhí)行的次數(shù)。在執(zhí)行break語句之后,要執(zhí)行的下一行代碼是alert()函數(shù),結果顯示4。也就是說,在變量i等于5時,循環(huán)總共執(zhí)行了4次;而break語句的執(zhí)行,導致了循環(huán)在num次遞增之前就退出了。如果在這里把break替換為continue的話,則可以看到另一種結果:

var num = 0;

for (var i=l; i<10; 1++) {

if (i%5==O) {

continue;

}

num++;

}

alert (num); //8

例子的結果顯示8,也就是循環(huán)總共執(zhí)行了8次。當變量i等于5時,循環(huán)會在num再次遞增之前退出,但接下來執(zhí)行的是下一次循環(huán),即i的值等于6的循環(huán)。于是,循環(huán)又繼續(xù)執(zhí)行,直到i等于10時自然結束。而mun的最終值之所以是8,是因為continue語句導致它少遞增了一次。

break和continue語句都可以與label語句聯(lián)合使用,從而返回代碼中特定的位置。這種聯(lián)合使用的情況多發(fā)生在循環(huán)嵌套的情況下,如下面的例子所示:

varriuni=0;

outermost;

for (var i=0;i<10; 1++) {

for (var j=0; j<10; j++) {

if (i==5&&j==5) {

break outermost;

}

num++;

}

}

alert (num); //55

在這個例子中,outermost標簽表示外部的for語句。如果每個循環(huán)正常執(zhí)行10次,則num++語句就會正常執(zhí)行100次。換句話說,如果兩個循環(huán)都自然結束,num的值應該是100。但內部循環(huán)中的break話句帶了一個參數(shù):要返回到的標簽。添加這個標簽的結果將導致break語句不僅會退出內部的for語句(即使用變量j的循環(huán)),而且也會退出外部的for語句(即使用變量i的循環(huán))。

為此,南昌網頁設計公司前端開發(fā)工程師提示,當變量i和j都等于5時,num的值正好是55。同樣,continue語句也可以像這樣與label語句聯(lián)用,如下面的例子所示:

varrium=O;

outermost;

for (var i=0; i<10; 1++) {

for (var j=0; j<10; j++) {

if(i==5&&j==5) {

continue outermost;

}

num++;

}

}

alert (num); //95

在這種情況下,continue語句會強制繼續(xù)執(zhí)行循環(huán)——退出內部循環(huán),執(zhí)行外部循環(huán)。當j是5時,continue語句執(zhí)行,而這也就意味著內部循環(huán)少執(zhí)行了5次,因此num的結果是95。

雖然聯(lián)用break、continue和label語句能夠執(zhí)行復雜的操作,但如果使用過度,也會給調試帶來麻煩。在此,南昌網絡公司百恒網絡建議如果使用label語句,一定要使用描述性的標簽,同時不要嵌套過多的循環(huán)。

3. with語句

with語句的作用是將代碼的作用域設置到一個特定的對象中。with語句的語法如下:

with (expression) statement

定義with語句的目的主要是為了簡化多次編寫同一個對象的工作,如下面的例子所示:

var qs=location.search.substring(l);

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對象屬性的值作為變量的值。

南昌網站建設公司前前端開發(fā)工程師提醒:由于大量使用with語句會導致性能下降,同時也會給調試代碼造成困難,因此在開發(fā)大型應用程序時,不建議使用with語句.


400-680-9298,0791-88117053
掃一掃關注百恒網絡微信公眾號
掃一掃打開百恒網絡小程序

歡迎您的光顧,我們將竭誠為您服務×

售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售后服務 售后服務
 
售后服務 售后服務
 
備案專線 備案專線
 
×
嵊州市| 二连浩特市| 马边| 台中市| 仪陇县| 长子县| 中江县| 太康县| 新宾| 临桂县| 尖扎县| 石泉县| 平湖市| 银川市| 大田县| 清水河县| 仪征市| 托克托县| 丰都县| 阳城县| 荆门市| 浦北县| 秦皇岛市| 东乌珠穆沁旗| 项城市| 峡江县| 洪泽县| 永和县| 甘泉县| 洛浦县| 曲靖市| 永昌县| 泗阳县| 镇巴县| 龙岩市| 苍溪县| 阿瓦提县| 七台河市| 康乐县| 马公市| 蛟河市|