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