註解
單行註解://
多行註解:/* */
""多行註釋類似,容易混淆,所以不建議這種註釋方法
變數
在JavaScript 語言裡,變數和其他語法元素的名字都是區分字母大小寫的。名字mood的變數與名字是Mood、MOOD或mOOd的變數沒有任何關係,它們不是同一個變數。
JavaScript 語法不允許變數名稱包含空格或標點符號("$"例外)。
JavaScript 變數名稱允許包含字母、數字、美元符號和底線(但第一個字元不允許是數字)。
另一種方式是使用駝峰格式,刪除中間的空白(底線),後面的每個新單字改用大寫字母開頭:var myMood = "happy";
資料型別
字串
字串必須包含在引號中,單引號或雙引號都可以。你可以隨意選擇引號,但最好是根據字串所包含的字元來選擇。如果字串包含雙引號,就把整個字串放在單引號裡,反之亦然:
var mood = "don't ask";
若想在此語句中使用單引號,就必須確保字母"n"和"t"之間的單引號能被當成這個字串的一部份。這種情況下我們需要對這個字元進行轉義。在JavaScript裡用反斜線對字元進行轉義:
var mood = 'don't ask';
陣列
關聯陣列
傳統陣列:每個元素的下標是一個數字,每增加一個元素,這個數字就一次增加1。
如果在填滿陣列時只給出了元素的值,這個陣列就將是一個傳統數組,它的各個元素的下標將被自動建立和刷新。
可透過在填入陣列時為每個新元素明確地給予下標來改變此預設的行為。在為新元素給出下標時,不必局限於使用整數數字。你可以使用字串:
這樣的陣列叫做關聯陣列。由於可以使用字串代替數字值,因而程式碼更具可讀性。但是,這種用法並不是一個好習慣,不推薦大家使用。本質上,在創建關聯數組時,你創建的是Array物件的屬性。在JavaScript 中,所有的變數其實都是某種類型的物件。例如,一個布林值就是一個Boolean類型的物件。在上面這個範例中,你其實是為lemon陣列加入了name、year和living三個屬性。在理想情況下,你不應該修改Array物件的屬性,而應該使用通用的物件(Object)。
物件
lemon物件也可以寫成下面這樣:
比較運算子
相等操作符==並未表示嚴格相等,且容易讓人犯糊塗。例如,比較false與一個空字串會得到什麼結果?
這個條件語句的求值結果是true,為什麼?因為相等運算子==認為空字串與false的意思相同。要進行嚴格比較,就要使用另一種等號(===)。這個全等運算子會執行嚴格的比較,不僅比較值,還會比較變數的型別。
當然,對於不等運算子!=也是如此。如果想比較嚴格不相等,就要使用!==。