国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

解析JavaScript中的標簽語句

2019-11-20 22:38:29
字體:
來源:轉載
供稿:網友
Javascript中標簽(label)是一個標識符。標簽可以與變量重名,它是一個獨立的語法元素(既不是變量,也不是類型),其作用是標識”標簽化語句(labeled statement)”

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

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

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

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

break my_label;
除了可以跳出循環和switch分支,還可以跳出標簽化語句(labeled statement)的內部
復制代碼 代碼如下:

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與標簽
continue僅對循環語句有意義,因此它只能作用于for、for…in、while和do…while這些語句的內部。默認情況下,它表明停止當前循環并跳轉到下一次循環迭代開始處運行。

continue后面也可以帶一個標簽(label),這時表明從循環體內部中止,并繼續到標簽(label)指示處開始執行,并且這個標簽指示的語句必須是包含此continue的循環語句。
例如:
loop:
復制代碼 代碼如下:

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

上面例子continue + label體現不出label的特殊作用,其實完全可以把label去掉,效果相同。下面再看一個例子
復制代碼 代碼如下:

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直接跳到外層循環才是其意義所在。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 开封县| 河间市| 谷城县| 鄂托克旗| 涞水县| 上虞市| 延吉市| 喀喇| 沙坪坝区| 合肥市| 双流县| 永新县| 云南省| 顺义区| 上杭县| 剑河县| 略阳县| 新竹市| 鄂托克旗| 吉首市| 金门县| 拉萨市| 将乐县| 社会| 随州市| 文化| 清河县| 大丰市| 三江| 邯郸县| 循化| 泌阳县| 辽中县| 岳池县| 湖口县| 凯里市| 固阳县| 纳雍县| 阿图什市| 新余市| 陆河县|