在 JavaScript 程式中如果你在 if 條件語句中使用指派運算符的等号 (=) 将會産生一個錯誤結果, 正确的方法是使用比較運算符的兩個等号 (==)。
在嚴格的比較運算中,=== 為恒等計算符,同時檢查表達式的值與類型。
在 switch 語句中出現,switch 語句會使用恒等計算符(===)進行比較。
加法是兩個數字相加。
連接配接是兩個字元串連接配接。
JavaScript 的加法和連接配接都使用 + 運算符。
JavaScript 中的所有資料都是以 64 位浮點型資料(float) 來存儲。
所有的程式設計語言,包括 JavaScript,對浮點型資料的精确度都很難确定:
用如下方式進行問題的解決:
JavaScript 允許我們在字元串中使用斷行語句,但是,在字元串中直接使用回車換行是會報錯的,字元串斷行需要使用反斜杠(\)。
JavaScript 預設是在代碼的最後一行自動結束。
許多程式語言都允許使用名字來作為數組的索引。
使用名字來作為索引的數組稱為關聯數組(或哈希)。
JavaScript 不支援使用名字來索引數組,隻允許使用數字索引。
錯誤例子:
在 JavaScript 中, null 用于對象, undefined 用于變量,屬性和方法。
對象隻有被定義才有可能為 null,否則為 undefined。
如果我們想測試對象是否存在,在對象還沒定義時将會抛出一個錯誤。
錯誤的使用方式:
正确的方式是我們需要先使用 typeof 來檢測對象是否已定義:
在每個代碼塊中 JavaScript 不會建立一個新的作用域,一般各個代碼塊的作用域都是全局的。
以下代碼的的變量 i 傳回 10,而不是 undefined。
舉個例子: