最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解析JavaScript中的標(biāo)簽語句

 更新時(shí)間:2013年06月19日 15:17:27   作者:  
本篇文章是對(duì)JavaScript中的標(biāo)簽語句進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
Javascript中標(biāo)簽(label)是一個(gè)標(biāo)識(shí)符。標(biāo)簽可以與變量重名,它是一個(gè)獨(dú)立的語法元素(既不是變量,也不是類型),其作用是標(biāo)識(shí)”標(biāo)簽化語句(labeled statement)”

標(biāo)簽聲明
標(biāo)簽(label)可以聲明在任何一個(gè)語句前面,或者語句塊前,以使得語句或語句塊被“標(biāo)簽化(labeled)”。
label1:
復(fù)制代碼 代碼如下:

    myFun1();
label2:{
   var i = 1, j = 2;
   var k = i + j;
}

注意:當(dāng)標(biāo)簽(label)后面連續(xù)多條語句時(shí),只有第一條語句被標(biāo)簽化
雖然GOTO是Javascript的保留關(guān)鍵字,但是里沒有GOTO語句。除了GOTO外,Javascript里有另外三個(gè)關(guān)鍵字可以改變程序的流程:break,continue和return。其中break和continue可以和標(biāo)簽(label)一起使用。

break與標(biāo)簽
break通常用于跳出for、while循環(huán)和跳出switch語句。默認(rèn)情況下,break子句作用于循環(huán)語句的最內(nèi)層,或者整個(gè)switch語句,因此它不必特別地指定中斷語句的范圍。但break子句具有一種擴(kuò)展語法,以指示其作用范圍。

break my_label;
除了可以跳出循環(huán)和switch分支,還可以跳出標(biāo)簽化語句(labeled statement)的內(nèi)部
復(fù)制代碼 代碼如下:

var str = prompt('please input a string','1234567890');

my_label: {
    if (str && str.length < 10) {
        break my_label:
    }
    str = str.substr(str.length-10);
}

alert(str);

continue與標(biāo)簽
continue僅對(duì)循環(huán)語句有意義,因此它只能作用于for、for…in、while和do…while這些語句的內(nèi)部。默認(rèn)情況下,它表明停止當(dāng)前循環(huán)并跳轉(zhuǎn)到下一次循環(huán)迭代開始處運(yùn)行。

continue后面也可以帶一個(gè)標(biāo)簽(label),這時(shí)表明從循環(huán)體內(nèi)部中止,并繼續(xù)到標(biāo)簽(label)指示處開始執(zhí)行,并且這個(gè)標(biāo)簽指示的語句必須是包含此continue的循環(huán)語句。
例如:
loop:
復(fù)制代碼 代碼如下:

  for (var j = 0; j < 5; j++)
  {
     if (j == 2) continue loop;
     document.write("loop: " + j +);
  }

上面例子continue + label體現(xiàn)不出label的特殊作用,其實(shí)完全可以把label去掉,效果相同。下面再看一個(gè)例子
復(fù)制代碼 代碼如下:

document.write("Entering the loop!<br /> ");
outerloop:   // This is the label name
for (var i = 0; i < 3; i++)
{
   document.write("Outerloop: " + i + "<br />");
   for (var j = 0; j < 5; j++)
   {
      if (j == 3){
         continue outerloop;
      }
      document.write("Innerloop: " + j + "<br />");
   }
}
document.write("Exiting the loop!<br /> ");

使用continue label直接跳到外層循環(huán)才是其意義所在。

相關(guān)文章

最新評(píng)論

鹤山市| 宜川县| 河北省| 东乌珠穆沁旗| 慈利县| 山西省| 乐业县| 青河县| 镇坪县| 齐齐哈尔市| 巫溪县| 邵武市| 三明市| 永济市| 赤峰市| 即墨市| 确山县| 阿拉善左旗| 全椒县| 张北县| 香格里拉县| 沂水县| 肥东县| 凌海市| 玛多县| 绵竹市| 台山市| 平顺县| 黔江区| 肥城市| 安多县| 克山县| 宝坻区| 沂源县| 思南县| 鹤岗市| 济宁市| 开远市| 焉耆| 新绛县| 甘孜县|