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

JavaScript 學習筆記之語句

 更新時間:2015年01月14日 10:59:38   投稿:hebedich  
這篇文章主要介紹了JavaScript中的語句,包括條件分支語句、循環(huán)語句、迭代語句、Lable語句、break和continue語句、with語句、swith語句,十分全面細致,推薦給小伙伴們。

一、條件分支語句:if

基本格式:

if (<表達式1>){
    <語句組1>
}else if (<表達式2>){
    <語句組2>
}else{
    <語句組3>
}

執(zhí)行流程:

二、循環(huán)語句

2.1前測試循環(huán)語句:在循環(huán)體內的代碼被執(zhí)行之前就對出口條件求值。

2.1.1while語句

基本格式:

do {
    <語句組>
} while (<表達式>)

執(zhí)行流程:


2.1.2 for語句

基本格式:
for (<初始表達式>;<條件表達式>;<變動量表達式>){
    <語句組>
}

執(zhí)行流程:
 


2.2后測試循環(huán)語句:在循環(huán)體中的代碼被執(zhí)行之后才會測試出口條件。

2.2.1、do-while語句

基本格式:

do {
    <語句組>
} while (<表達式>) ;

執(zhí)行流程:

三、精準的迭代語句:for-in

基本格式:
for ( 屬性 in 對象 ){
    <語句組>
}

作用:重復執(zhí)行指定對象的所有屬性,可以用來枚舉對象的屬性。

 例子:

復制代碼 代碼如下:

<html>
<body>
<p>點擊下面的按鈕,循環(huán)遍歷對象 "person" 的屬性。</p>
<button onclick="myFunction()">點擊這里</button>
<p id="demo"></p>
<script>
function myFunction()
{
var x;
var txt="";
var person={fname:"Bill",lname:"Gates",age:56};
for (x in person)
{
txt=txt + person[x];
}
document.getElementById("demo").innerHTML=txt;
}
</script>
</body>
</html>

如果要表示的對象為null或者undefined,循環(huán)體將不再執(zhí)行,或者拋出錯誤,因此,在執(zhí)行for-in循環(huán)時,應該先檢測改對象的屬性值是不是null或者undefined。

四、Lable語句

基本語法:

Label: <語句組>

如: begin: for (var i = 0; i < 10 ; i++ ){
                         alert(i);
                   }
舉例說明lable語句的作用:
未加lable:

復制代碼 代碼如下:

var num = 0;
        for (var i = 0 ; i < 10 ; i++){
             for (var j = 0 ; j < 10 ; j++){
                  if( i == 5 && j == 5 ){
                        break;
                  }
             num++;
             }
        }
        alert(num);//95

加入lable:

復制代碼 代碼如下:

var num = 0;
    outPoint:
    for (var i = 0 ; i < 10 ; i++){
         for (var j = 0 ; j < 10 ; j++){
              if( i == 5 && j == 5 ){
                    break outPoint;
              }
         num++;
         }
    }
    alert(num); //55

第一個例子輸出95不難理解,第二個例子為什么輸出55呢,是因為執(zhí)行到break outpoint時,直接跳出到putpoint層,執(zhí)行alert語句。

如果把第二個例子改成下面這樣:

復制代碼 代碼如下:

                var num = 0;
                 for (var i = 0 ; i < 10 ; i++){
                     outPoint:
                     for (var j = 0 ; j < 10 ; j++){
                         if( i == 5 && j == 5 ){
                             break  outPoint;
                         }
                         num++;
                     }
                 };
         alert(num);//95

這個結果和第一個例子的結果是一致的。

五、break和continue語句

5.1break語句:

復制代碼 代碼如下:

       var num = 0;
        for (var i = 1 ; i < 10 ; i++){
            if(i%5==0){
                break;
            }
            num++;
        };
        alert(num);//4

break語句執(zhí)行后跳到alert語句

5.2continue語句:

復制代碼 代碼如下:

  var num = 0;
  for (var i = 1 ; i < 10 ; i++){
     if(i%5==0){
        continue;
     }
       num++;
   };
   alert(num);//8

continue語句執(zhí)行后跳到for()循環(huán),繼續(xù)執(zhí)行循環(huán),直到循環(huán)條件不成立。

六、with語句

基本語法:

with (object) {
    statements
}
舉例說明:
不使用with的寫法:

復制代碼 代碼如下:

var qs = location.search.substring(1);
var hostName = location.hostname;     
var url = location.href;
 alert(qs);
 alert(hostName);
 alert(url);

使用with的寫法:

復制代碼 代碼如下:

  with(location){
             var qs = search.substring(1);
             var hostName = hostname;     
             var url = href;
         }
         alert(qs);
         alert(hostName);
         alert(url);

從上面例子可以看出:with語句的作用是將代碼的作用域設置到一個特定的對象中、減少的重復輸入。

但是js的解釋器需要檢查with塊中的變量是否屬于with包含的對象,這將使with語句執(zhí)行速度大大下降,并且導致js語句很難被優(yōu)化。

因此并不建議大規(guī)模使用with語句。

七、swith語句

基本語法:
switch (<表達式>) {
    case <數(shù)值1>:<語句組1>
                 break;
    case <數(shù)值2>:<語句組2>
                 break;
    ...
    default <語句組>
}

執(zhí)行流程:

switch語句可以是任何數(shù)據(jù)類型,每個case的值也不一定是常量,也可以是變量、表達式等,例如:

復制代碼 代碼如下:

  switch ("hello world") {
             case "hello" + " world":
                 alert("Greeting was found.");
                 break;
             case "goodbye":
                 alert("Closing was found.");
                 break;
             default:
                 alert("Unexpected message was found.");
         }

復制代碼 代碼如下:

         var num = 25;
         switch (true) {
             case num < 0:
                 alert("Less than 0.");
                 break;
             case num >= 0 && num <= 10:
                 alert("Between 0 and 10.");
                 break;
             case num > 10 && num <= 20:
                 alert("Between 10 and 20.");
                 break;
             default:
                 alert("More than 20.");
         }

switch語句在比較時使用的是全等操作符比較,因此不會發(fā)生類型轉換。

練習:

復制代碼 代碼如下:

 <script type="text/javascript">
         var count = 10;
         for (var i=0; i < count; i++){
             alert(i);
         }
         alert(i);   //輸出什么?
     </script>

for(;;){
    alert("2");//輸出多少次2?
}

以上就是本文的全部內容了,希望對小伙伴們能夠有所幫助。

相關文章

最新評論

龙门县| 炉霍县| 宾川县| 黑水县| 盘锦市| 许昌县| 手游| 德昌县| 双桥区| 宁城县| 隆子县| 阿拉善左旗| 濮阳市| 新邵县| 平塘县| 凭祥市| 西城区| 隆德县| 阜康市| 玛沁县| 奉节县| 新乡县| 凌源市| 元朗区| 什邡市| 张家港市| 彰化市| 鹤壁市| 图木舒克市| 五峰| 灌云县| 彭州市| 苗栗县| 平湖市| 思南县| 鹤岗市| 宜阳县| 江永县| 页游| 清水河县| 潞城市|