最詳細的JavaScript高級教程(七)表達式

if語句

推薦if語句中的表達式不管是不是單行都用大括號括起來以簡化閱讀。

循環語句

JS中支持 do while語句 和 while語句,這兩種的用法與其他語言相似,這裏就不多贅述了,我們看一看for的一些特殊的例子,一看便明白

// 不存在塊級作用域,所以外部也能訪問
for(var i = 0; i < 10; i++){
    
}
alert(i) // 輸出10
// 無限循環
for(;;){}
// for當成while用
var i = 0;
for(;i < 10;){
    i++;
}

for in語句

用於遍歷可以遍歷的對象

for(var propName in window){
    document.write(propName);
}

break continue

用法跟我們平常使用沒什麼不同,這裏介紹一個不一樣的用法,就是與label結合之後的跳出指定循環的功能。

可以使用 labelName: 的方式給一個循環加一個標籤,break 或者 continue的時候,加上這個標籤可以指定跳出的循環或者跳到指定的循環

var num = 0;
outmost:for(var i = 0; i < 10; i++){
    for(var j = 0; j < 10; j++){
        if(i == 5 && j == 5){
            // 標籤指示了break操作針對哪個循環
            // 下面代碼的意思是直接跳出外層的循環,所以循環就停止了
            // 所以輸出55
            break outmost;
        }
        num++;
    }
}
alert(num); // 輸出55
var num = 0;
outmost:for(var i = 0; i < 10; i++){
    for(var j = 0; j < 10; j++){
        if(i == 5 && j == 5){
            // 標籤指示了continue操作針對哪個循環
            // 下面代碼的意思是直接continue外層的循環,所以循環被跳過了五次
            // 所以輸出95
            continue outmost;
        }
        num++;
    }
}
alert(num); // 輸出95

with語句

局部塊,不推薦使用,嚴格模式不允許使用with,原因是with使得性能大量下降

window.a = 1;
window.b = 2;
// 可以使用with改寫爲
with(window){
    a = 1;
    b = 2;
}

switch 語句

switch語句的基本語法與其他語言相同,但是它有自己的優點,就是支持表達式甚至變量,這個特點十分優越,我們可以寫出下面的代碼

// 執行所有結果爲true的表達式後面的語句
switch(true){
    case 2 == 3:
        alert("2 == 3");
        break;
    case 2 == 2:
        alert("2 == 2");
        break;
    default:
        break;
}

注意switch語句使用的是全等,不是相等,這讓我們十分放心的使用switch語句。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章