JavaScript 自动类型转换
示例
请注意,数字可能会意外地转换为字符串或NaN(非数字)。
JavaScript是松散类型的。变量可以包含不同的数据类型,并且变量可以更改其数据类型:
var x = "Hello"; //typeofx是一个字符串 x = 5; //将typeofx更改为数字
在进行数学运算时,JavaScript可以将数字转换为字符串:
var x = 5 + 7; //x.valueOf()是12,typeofx是一个数字 var x = 5 + "7"; //x.valueOf()是57,typeofx是一个字符串 var x = "5" + 7; //x.valueOf()是57,typeofx是一个字符串 var x = 5 - 7; //x.valueOf()是-2,typeofx是一个数字 var x = 5 - "7"; //x.valueOf()是-2,typeofx是一个数字 var x = "5" - 7; //x.valueOf()是-2,typeofx是一个数字 var x = 5 - "x"; //x.valueOf()是NaN,typeofx是一个数字
从字符串中减去字符串不会产生错误,但会返回NaN(不是数字):
"Hello" - "Dolly" //返回NaN