JavaScript var關鍵字、變量的狀態、異常處理、命名規範等介紹

  本篇主要介紹var關鍵字、變量的undefined和null狀態、異常處理、命名規範。javascript

目錄

1. var 關鍵字:介紹var關鍵字的使用。html

2. 變量的狀態:介紹變量的未定義、已定義未賦值、已定義已賦值 三種狀態。java

3. JS異常:介紹對JS異常的處理。web

4. 命名規範:介紹Js的基本命名規範。ajax

 

1. var 關鍵字

1.1 做用

  聲明做用;如聲明個變量。瀏覽器

1.2 語法  

var c = 1;

1.3 省略var

在javascript中,若省略var關鍵字而直接賦值,那麼這個變量爲全局變量,哪怕是在function裏定義的。服務器

<script type="text/javascript">
    function Define() {
        a = 2;
    }
    function Hello() {
        alert(a);
    }
</script>

如代碼所示,運行函數Define()後,變量a聲明爲全局變量。在Hello()函數中能夠引用變量a。app

 

2. 變量的狀態

變量的狀態通常有三種:未定義、已定義未賦值、已定義已賦值。函數

前面兩種狀態不處理好,每每會形成異常現象。工具

2.1 變量未定義

2.1.1 異常說明

代碼引用了一個未定義的變量後,瀏覽器會報錯:變量未定義。

2.1.2 判斷變量是否認義

可經過typeof()方法來判斷變量是否未定義(已定義未賦值的變量也會顯示undefined)。

<script type="text/javascript">
    function Show() {
        if (typeof (b) == "undefined") {
            alert("變量b未定義");
        }
    }
</script>

2.2 已定義未賦值

2.2.1 代碼示例

<script type="text/javascript">
    var a;
    function Show() {
        alert(a);//輸出 undefined
    }
</script>

2.2.2 判斷是否未賦值

function Show() {
    var a;
    if (typeof (a) == 'undefined' && a == null)
        alert("a未賦值");
    }
}

 

3. JS異常

javascript的異常處理有三個關鍵字:try、catch、throw

try:包含可能出錯的js語句。

catch:捕獲出現的錯誤。

throw:建立自定義錯誤。

3.1 try、catch 系統默認異常信息

var erra;
function ShowError() {
    try {
        erra = errb; //errb未定義
        alert(erra);
    } catch (ex) {
        alert(ex); //輸出異常信息:(Chrome)errb is not defined ,(IE)'errb'未定義
    }
}

3.2 try、catch、throw 自定義異常信息

 要加一個條件判斷:

function ShowError() {
    try {
        if (typeof (errb) == "undefined")
            throw "errb未定義";
        erra = errb;
    } catch (ex) {
        alert(ex); //輸出異常信息:(Chrome和IE)"errb未定義"
    }
}

3.3 異常捕獲使用場景

1. 未捕獲異常,瀏覽器會提示錯誤,有損用戶體驗:

IE中,未捕獲的異常,會在左下角提示」網頁上有錯誤":

 

Chrome中,除非打開(F12)開發者工具,纔會跳到異常地方。不然會被瀏覽器自動忽略。

2. 獲取異常信息幫助代碼改進

可在catch塊中,經過ajax把捕獲的異常信息發送到服務器,以幫助代碼改進。

 

4. 命名規範

首先JavaScript是區分大小寫,如下只是便於閱讀和維護,而不是必須的:

1.函數名稱採用駱駝命名法:第一個單詞小寫,第二個單詞首個字母爲大寫。如系統自帶的函數:parseInt、isNaN

2.對象名稱第一個字母大寫。如:Math、Number、Array

3.事件多爲on開頭,而且小寫。如:onclick、onload

更多信息可閱讀:3.10 Js的開發規範

 

 

相關文章
相關標籤/搜索