#第三章語法、關鍵保留字及變量
講師:_無腦碼農(張磊)_
博客:http://www.h5code.com
課程內容:
[TOC]
* * * * *
###1.>語法構成
**區分大小寫**
>ECMAScript中的一切,包括變量、函數名和操作符都是區分大小寫的。例如:text 和Text 表示兩種不同的變量。
**標識符**
>所謂標識符,就是指變量、函數、屬性的名字,或者函數的參數。標識符可以是下列格式規則組合起來的一或多個字符:
1. 第一字符必須是一個字母、下劃線(_)或一個美元符號($)。
2. 其他字符可以是字母、下劃線、美元符號或數字。
3. 不能把關鍵字、保留字、true、false 和null 作為標識符。
>例如:myName、book123 等注
**注釋**
>ECMAScript 使用C 風格的注釋,包括單行注釋和塊級注釋。
~~~
// 單行注釋
/*
* 這是一個多行
* 注釋
*/
~~~
**字面量**
>所有字面量,就是程序中直接顯示出來的數據值。
300 //數字字面量
'無腦碼農' //字符串字面量
true //布爾字面量
/js/gi //正則表達式字面量
null //對象字面量
在ECMAScript 第3版中,像數組字面量和對象字面量的表達式也是支持的,如下:
{x:1, y:2} //對象字面量表達式
[1,2,3,4,5] //數組字面量表達式
###2.>關鍵字和保留字
>ECMAScript-262 描述了一組具有特定用途的關鍵字,一般用于控制語句的開始或結束,
或者用于執行特定的操作等。關鍵字也是語言保留的,不能用作標識符。
**ECMAScript 全部關鍵字**
| break|else| new |var|
| -- | -- | -- | -- |
| case| finally| return| void |
| catch| for |switch |while |
| continue| function| this| with |
| default| if| throw| delete |
| in| try|do| instanceof| typeof |
>ECMAScript-262 還描述了另一組不能用作標識符的保留字。盡管保留字在JavaScript中還沒有特定的用途,但它們很有可能在將來被用作關鍵字。
**ECMAScript-262 第3 版定義的全部保留字**
| abstract |enum |int |short |
| -- | -- | -- | -- |
| boolean| export| interface| static |
| byte| extends| long| super |
| char| final| native| synchronized |
| class| float| package| throws |
| const| goto| private| transient |
| debugger| implements| protected| volatile |
| double| import| public |
###3.>變量
>ECMAScript 的變量是松散類型的,所謂松散類型就是用來保存任何類型的數據。定義
變量時要使用var 操作符(var是關鍵),后面跟一個變量名(變量名是標識符)。
~~~
var box;
alert(box);
~~~
>這句話定義了box變量,但沒有對它進行初始化(也就是沒有給變量賦值)。這時,系統會給它一個特殊的值--undefined(表示未定義)。
~~~
var box= '無腦碼農';
alert(box);
~~~
>所謂變量,就是可以初始化后可以再次改變的量。ECMAScript屬于弱類型(松散類型)的語言,可以同時改變不同類型的量。(PS:雖然可以改變不同類型的量,但這樣做對于后期維護帶來困難,而且性能也不高,導致成本很高!)
~~~
var boxString = '無腦碼農';
boxString = 100;
alert(boxString);
~~~
>重復的使用var 聲明一個變量,只不過是一個賦值操作,并不會報錯。但這樣的操作是比較二的,沒有任何必要。
~~~
var box= '無腦碼農';
var box= 'Zhang';
~~~
>還有一種變量不需要前面var 關鍵字即可創建變量。這種變量和var的變量有一定的區別和作用范圍,我們會在作用域那一節詳細探討。
`box= '無腦碼農';`
>當你想聲明多個變量的時候,可以在一行或者多行操作。
`var box= '無腦碼農';var age= 100;`
>而當你每條語句都在不同行的時候,你可以省略分號。(PS:這是ECMAScript支持的,但絕對是一個非常不好的編程習慣,切記不要)。
~~~
var box= '無腦碼農'
var age= 100
alert(box)
~~~
>可以使用一條語句定義多個變量,只要把每個變量(初始化或者不初始化均可)用逗號分隔開即可,為了可讀性,每個變量,最好另起一行,并且第二變量和第一變量對齊(PS:這些都不是必須的)。
~~~
var box= '無腦碼農',
age = 28,
height;
~~~