強制型轉 Coercion
JavaScript 是一個動態型別的語言,當不同型別的參數透過運算子來運算時,JavaScript 會將參數的型別轉為相同,而不是回傳一個錯誤的訊息
上一章節中有提到透過加號 + 來做數字的運算,但其實不只能用在數字,在字串使用時會將彼此連結
1 | var a = 'Hello ' + 'World'; // Hello World |
如果是一個數字加上字串的運算,JavaScript 會將數字的參數強制型轉成字串
1 | var b = '1' + 2; // 12 |
即使這麼做不會出現錯誤,但一般來說盡量避免這樣的運算出現,原因是在開發時通常不會只有這麼簡單的運算,兩個參數之間可能有大量的程式碼,避免出現無法預期的 Bug