隐式类型转换
document.write("3" - 2); // 输出:1
document.write("3" + 2); // 输出:"32"
document.write(3 + "2"); // 输出:"32"
document.write("3" * "2"); // 输出:6
document.write("10" / "2"); // 输出:5
document.write(1 + true); // 输出:2
document.write(1 + false); // 输出:1
document.write(1 + undefined); // 输出:NaN
document.write(3 + null); // 输出:3
document.write("3" + null); // 输出:"3null"
document.write(true + null); // 输出:1
document.write(true + undefined); // 输出:NaN
通过运行结果可以得出:
- 字符串加数字,数字会转换为字符串
- 数字减字符串,字符串会转换为数字,如果字符串无法转换为数字(例如"abc"、“JavaScript”),则会转换为NaN
- 字符串减数字,字符串会转换为数字,如果字符串无法转换为数字,则会转换为NaN
- 乘、除运算时,也会先将字符串转换为数字
强制类型转换
- Number()函数
- parseInt()函数
- parseFloat()函数