本文爲 H5EDU 機構官方 HTML5培訓 教程,主要介紹:JavaScript強化教程 —— 使用誤區
JavaScript 使用誤區 本章節我們將討論 JavaScript 的使用誤區。 賦值運算符應用錯誤 在 JavaScript 程序中如果你在 if 條件語句中使用賦值運算符的等號 (=) 將會產生一個錯誤結果, 正確的方法是使用比較運算符的兩個等號 (==)。 if 條件語句返回 false (是我們預期的)因爲 x 不等於 10: var x = 0; if (x == 10)
if 條件語句返回 true (不是我們預期的)因爲條件語句執行爲 x 賦值 10,10 爲 true: var x = 0; if (x = 10)
if 條件語句返回 false (不是我們預期的)因爲條件語句執行爲 x 賦值 0,0 爲 false: var x = 0; if (x = 0) Note 賦值語句返回變量的值。 比較運算符常見錯誤 在常規的比較中,數據類型是被忽略的,以下 if 條件語句返回 true: var x = 10; var y = "10"; if (x == y) 在嚴格的比較運算中,=== 爲恆等計算符,同時檢查表達式的值與類型,以下 if 條件語句返回 false: var x = 10; var y = "10"; if (x === y) 這種錯誤經常會在 switch 語句中出現,switch 語句會使用恆等計算符(===)進行比較: 以下實例會執行 alert 彈窗: var x = 10; switch(x) { case 10: alert("Hello"); } 以下實例由於類型不一致不會執行 alert 彈窗: var x = 10; switch(x) { case "10": alert("Hello"); } 加法與連接注意事項 加法是兩個數字相加。 連接是兩個字符串連接。 JavaScript 的加法和連接都使用 + 運算符。 接下來我們可以通過實例查看兩個數字相加及數字與字符串連接的區別: var x = 10 + 5; // x 的結果爲 15 var x = 10 + "5"; // x 的結果爲 "105" 使用變量相加結果也不一致: var x = 10; var y = 5; var z = x + y; // z 的結果爲 15 var x = 10; var y = "5"; var z = x + y; // z 的結果爲 "105"