上万部爽片,立即观看,在线观看,日韩av无码久久精品免费,欧美性受xxxx喷潮,欧洲男同gay,日韩精品一区二区三区

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

百恒網(wǎng)絡(luò)

南昌百恒網(wǎng)絡(luò)

ECMAScript 1ebel語(yǔ)句、break和continue語(yǔ)句、with語(yǔ)句

百恒網(wǎng)絡(luò) 2012-02-27 5079

1. 1ebel語(yǔ)句

使用label語(yǔ)句可以在代碼中添加標(biāo)簽,以便將來(lái)使用。以下是label語(yǔ)句的語(yǔ)法:

label: statement

下面是一個(gè)示例:

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

}

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

2. break和continue語(yǔ)句

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

var num=O;

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

if (i%5==O) {

break;

}

num++;

}

alert (num); //4

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

var num = 0;

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

if (i%5==O) {

continue;

}

num++;

}

alert (num); //8

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

break和continue語(yǔ)句都可以與label語(yǔ)句聯(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

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

為此,南昌網(wǎng)頁(yè)設(shè)計(jì)公司前端開(kāi)發(fā)工程師提示,當(dāng)變量i和j都等于5時(shí),num的值正好是55。同樣,continue語(yǔ)句也可以像這樣與label語(yǔ)句聯(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語(yǔ)句會(huì)強(qiáng)制繼續(xù)執(zhí)行循環(huán)——退出內(nèi)部循環(huán),執(zhí)行外部循環(huán)。當(dāng)j是5時(shí),continue語(yǔ)句執(zhí)行,而這也就意味著內(nèi)部循環(huán)少執(zhí)行了5次,因此num的結(jié)果是95。

雖然聯(lián)用break、continue和label語(yǔ)句能夠執(zhí)行復(fù)雜的操作,但如果使用過(guò)度,也會(huì)給調(diào)試帶來(lái)麻煩。在此,南昌網(wǎng)絡(luò)公司百恒網(wǎng)絡(luò)建議如果使用label語(yǔ)句,一定要使用描述性的標(biāo)簽,同時(shí)不要嵌套過(guò)多的循環(huán)。

3. with語(yǔ)句

with語(yǔ)句的作用是將代碼的作用域設(shè)置到一個(gè)特定的對(duì)象中。with語(yǔ)句的語(yǔ)法如下:

with (expression) statement

定義with語(yǔ)句的目的主要是為了簡(jiǎn)化多次編寫(xiě)同一個(gè)對(duì)象的工作,如下面的例子所示:

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

var hostName=location.hostname;

var url=location.href;

上面幾行代碼都包含location對(duì)象。如果使用with語(yǔ)句,可以把上面的代碼改寫(xiě)成如下所示:

with(location){

var qs=search.substring (1);

var hostName=hostname;

var url=href;

}

在這個(gè)重寫(xiě)后的例子中,使用with語(yǔ)句關(guān)聯(lián)了location對(duì)象。這意味著在with語(yǔ)句的代碼塊內(nèi)部,每個(gè)變量首先被認(rèn)為是一個(gè)局部變量,而如果在局部環(huán)境中棧不到該變量的定義,就會(huì)查詢location對(duì)象中是否有同名的屬性。如果發(fā)現(xiàn)了同名屬性,則以location對(duì)象屬性的值作為變量的值。

南昌網(wǎng)站建設(shè)公司前前端開(kāi)發(fā)工程師提醒:由于大量使用with語(yǔ)句會(huì)導(dǎo)致性能下降,同時(shí)也會(huì)給調(diào)試代碼造成困難,因此在開(kāi)發(fā)大型應(yīng)用程序時(shí),不建議使用with語(yǔ)句.


400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號(hào)
掃一掃打開(kāi)百恒網(wǎng)絡(luò)小程序

歡迎您的光顧,我們將竭誠(chéng)為您服務(wù)×

售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售后服務(wù) 售后服務(wù)
 
售后服務(wù) 售后服務(wù)
 
備案專線 備案專線
 
×