官术网_书友最值得收藏!

2.2 常量和變量

程序執行過程中,其值不能被改變的稱為常量,其值能被改變的稱為變量。本節將對JavaScript腳本語言的常量和變量進行詳細講解。

2.2.1 常量

常量是指在程序運行過程中保持不變的數據。例如,123是數值型常量,“JavaScript腳本”是字符串型常量,true或false是布爾型常量等。在JavaScript腳本編程中,可直接輸入這些常量值。

2.2.2 變量

變量是指程序中一個已經命名的存儲單元,其主要作用就是為數據操作提供存放信息的容器。對于變量的使用,首先必須明確其命名規則、聲明方法及其作用域。

1.變量的命名

JavaScript中,變量的命名規則如下:

必須以字母或下畫線開頭,中間可以是數字、字母或下畫線。

不能包含空格、加號、減號等符號。

不能使用JavaScript中的關鍵字(如表2.2所示)。

嚴格區分大小寫。例如,UserName與username代表兩個不同的變量。

說明

雖然JavaScript中變量可以任意命名,但是在實際編程時,最好還是使用便于記憶且有意義的變量名稱,以增加程序的可讀性。

表2.2 JavaScript的關鍵字

2.變量的聲明與賦值

在JavaScript中,使用變量前需要先對其進行聲明。所有的JavaScript變量都由關鍵字var聲明,語法格式如下:

    var variable;

在聲明變量的同時,也可以對變量進行賦值,例如:

    var variable=11;

聲明變量時所遵循的規則如下:

可以使用一個關鍵字var同時聲明多個變量,例如:

    var a,b,c;  //同時聲明a、b和c 3個變量

可以在聲明變量的同時對其賦值,即進行初始化,例如:

    var i=1;j=2;k=3;  //同時聲明i、j和k 3個變量,并分別對其進行初始化

如果只是聲明了變量,并未對其賦值,則其值默認為undefined。

var語句可以用作for循環和for/in循環的一部分,這樣就使循環變量的聲明成為循環語法自身的一部分,使用起來比較方便。

也可以使用var語句多次聲明同一個變量。如果重復聲明的變量已經有一個初始值,那么此時的聲明就相當于對變量的重新賦值。

給一個尚未聲明的變量賦值時,JavaScript會自動用該變量名創建一個全局變量。在函數內部創建的通常是一個僅能在函數內部起作用的局部變量,而不是一個全局變量。要創建一個局部變量,不需要賦值給一個已經存在的局部變量,只需要使用var語句進行變量聲明即可。

例如,聲明一些變量,代碼如下:

JavaScript中,變量可以不事先聲明,使用時根據其實際作用來確定其數據類型即可。但本書建議讀者在使用變量前先進行聲明,這是因為JavaScript采用動態編譯,不易于發現代碼中的錯誤,特別是變量命名方面的錯誤,通過聲明變量可以及時發現代碼中的錯誤。

3.變量的作用域

變量的作用域(Scope)是指變量在程序中的有效范圍。JavaScript中根據作用域,變量可以分為兩種:全局變量和局部變量。全局變量是定義在所有函數之外,作用于整個腳本代碼的變量;局部變量是定義在函數體內,只作用于函數體的變量(函數的參數也是局部性的,只在函數內部起作用)。例如,下面的程序代碼說明了變量的作用域。

說明

JavaScript中用“;”作為語句結束標記,如果不加也可以正確地執行。用“//”作為單行注釋標記;用“/*”和“*/”作為多行注釋標記;用“{”和“}”包裝成語句塊?!?/”后面的文字為注釋部分,在代碼執行過程中不起任何作用。

4.變量的生存期

變量的生存期是指變量在計算機中存在的有效時間。全局變量在主程序中定義,其有效范圍從其定義開始,一直到本程序結束為止。局部變量在程序的函數中定義,其有效范圍只在該函數之中。函數結束后,局部變量的生存期也就結束了。

主站蜘蛛池模板: 台湾省| 罗甸县| 长白| 伊川县| 拉萨市| 玉树县| 贡嘎县| 武定县| 宕昌县| 久治县| 彰化市| 榆林市| 仁布县| 德钦县| 湟源县| 贡觉县| 吴旗县| 礼泉县| 皮山县| 凌源市| 兰坪| 延长县| 台湾省| 新巴尔虎左旗| 龙口市| 江阴市| 昭觉县| 长岛县| 新余市| 保靖县| 明水县| 双城市| 平乐县| 曲水县| 鲁甸县| 胶州市| 湖口县| 曲阜市| 普定县| 米林县| 柳林县|