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

      百恒網絡

      南昌百恒網絡

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

      百恒網絡 2012-02-27 5208

      1. 1ebel語句

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

      label: statement

      下面是一個示例:

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

      }

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

      2. break和continue語句

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

      var num=O;

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

      if (i%5==O) {

      break;

      }

      num++;

      }

      alert (num); //4

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

      var num = 0;

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

      if (i%5==O) {

      continue;

      }

      num++;

      }

      alert (num); //8

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

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

      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語句。如果每個循環正常執行10次,則num++語句就會正常執行100次。換句話說,如果兩個循環都自然結束,num的值應該是100。但內部循環中的break話句帶了一個參數:要返回到的標簽。添加這個標簽的結果將導致break語句不僅會退出內部的for語句(即使用變量j的循環),而且也會退出外部的for語句(即使用變量i的循環)。

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

      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語句會強制繼續執行循環——退出內部循環,執行外部循環。當j是5時,continue語句執行,而這也就意味著內部循環少執行了5次,因此num的結果是95。

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

      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語句關聯了location對象。這意味著在with語句的代碼塊內部,每個變量首先被認為是一個局部變量,而如果在局部環境中棧不到該變量的定義,就會查詢location對象中是否有同名的屬性。如果發現了同名屬性,則以location對象屬性的值作為變量的值。

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


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

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

      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售后服務 售后服務
       
      售后服務 售后服務
       
      備案專線 備案專線
       
      ×
      日韩精品免费一级视频| 久久发布国产伦子伦精品| 91精品久久久久久久久久| 亚洲国产日韩精品| 亚洲视频精品在线观看| 2022精品天堂在线视频| 亚洲色无码国产精品网站可下载| 91精品国产福利尤物| 国产精品videossex国产高清| 亚洲国产精品久久久久久| 日韩免费在线观看| 亚洲日韩精品国产一区二区三区| 精品人伦一区二区三区潘金莲 | 亚洲国产精品福利片在线观看| 精品一区二区三区中文| 国产毛片片精品天天看视频| 国产一精品一AV一免费| 日韩免费一区二区三区在线 | 麻豆精品国产免费观看 | 久久人午夜亚洲精品无码区| 日韩精品在线一区二区| 日韩免费在线观看视频| 国产精品久久久久久福利漫画| 人妻少妇精品无码专区二区| 国产精品国产三级国产| 国产精品美女久久久久久久| 久久精品毛片免费观看| 久久99精品久久久久子伦小说| 亚洲精品无码永久在线观看| 欧日韩不卡在线视频| 成人h动漫精品一区二区无码| 精品午夜国产福利观看| 久久这里的只有是精品23| 在线播放国产精品| 亚洲精品免费在线观看| 久久国产加勒比精品无码| 亚洲AV日韩精品久久久久| 蜜芽亚洲av无码精品色午夜| 精品无码久久久久久午夜| 亚洲精品国产电影午夜| 国产成人精品免费视|