程式設計語言的詞法結構是一套基本規則,用來詳細說明如何使用這種語言來編寫程式。它是一種語言的最低層次的文法,指定了變數名是什麼樣的,注釋應該使用什麼字元以及語句之間如何分隔等規則。
1. 字元集:
JavaScript程式是用Unicode字元集編寫的。與7位的ASCII編碼(只適用於英語)和8位的ISO Latin-1編碼(只適用於英語和西歐語言)不同,16位的Unicode編碼可以表示地球上通用的每一種書面語言。
美國以及其他講英語的國家的程式設計者通常都用僅支援ASCII碼和Latin-1編碼的文字編輯器編寫程式,因此他們難以訪問完整的Unicode字元集。但是這並不成問題,因為ASCII編碼和Latin-1編碼都是Unicode編碼的子集,所以用這兩種編碼集合編寫的JavaScript程式都是絕對有效。JavaScript程式中的每個字元都是用2個位元組表示的。
2. 大小寫敏感:
JavaScript是一種區分大小寫語言。這就是說,在輸入語言的關鍵字、變數、函數名以及所有的標識符時,都必須採用一致的字元大小寫形式。
3. 空白符和分行符號:
JavaScript會忽略程式中記號之間的空格、定位字元和分行符號。因此可以自由安排程式的格局,在其中使用縮排從而使代碼更容易閱讀和理解。但是注意對分行符號的放置有一點小小的限制,後面不會描述這個問題(詳見犀牛書P24)。
4. 可選的分號:
JavaScript中的簡單語句後通常都有分號,這主要是為了分隔語句,這一點與C,C++和Java一樣。但是在JavaScript中如果語句分別放置在不同的行中,就可以省去分號。省略分號並不是一個好的編程習慣,應該習慣於使用分號。
5. 注釋:
JavaScript支援兩種注釋:第一種是單行注釋//,第二種是多行注釋/*注釋*/。
6. 直接量:
所謂直接量,就是程式中直接顯示出來的資料值。下面列出的都是直接量:
121.2“Hello World”‘Hi’truefalsenull/javascript/gi //Regex直接量
在ECMAScript V3中,像數組直接量和對象直接量這樣的運算式也是支援的。例如:
[1,2,3,4,5]{x:1,y:2}
直接量對任何一種程式設計語言來說都是一個重要的部分,因為編寫不含直接量的程式幾乎是不可能的。
7. 標示符:
所謂標識符,就是一個名字。在JavaScript中,標識符用來命名變數和函數,或者用作JavaScript代碼中某些迴圈的標籤。JavaScript中合法的標識符命名規則:第一個字元必須是字母、底線或貨幣符號$。接下來的字元可以是字母、數字、底線或貨幣符號。注意數字不允許作為首字元出現。
最後要說的是,標識符不能和JavaScript中的關鍵字同名。