基本但卻重要。
要注意資料型別
一個很常見的例子是「字串 + 數字」:
1 | var a = 100 |
當「字串 + 任何東西時」,都會被強制轉成字串做「字串拼接」。
為了避免這種情況,當你想做的是數學運算時,請務必先轉換型態:
Number(a)
parseInt(a, 10)
,第二個參數是代表 a 這個字串代表的是幾進位的數字
所以剛剛的把例子修正一下:
1 | var a = 100 |
要注意浮點數誤差
這個還蠻常忽略掉的,但浮點數很多時候跟你想的不一樣:
1 | var a = 0.1 + 0.2 |
不要懷疑人生,真的不一樣。
但簡單來說,浮點數會有「輸入值不精確」跟「溢位」的問題,非必要時盡量不要用浮點數。
補充:「溢位」指的就是超出記憶體可以儲存的位元數。