在表达式中使用变量时,JavaScript会自动地将一种类型值变成另一种类型。也就是说在表达式中可有不同类型的数据组合,JavaScript在运算时完成使表达式有意义所必需的类型转换。在JavaScript中类型的转换是按其运算的优先级进行的,一般来说,字符串运算的优先级较高,然后依次是浮点运算、整型运算和逻辑运算。
例如:表达式"test"+5,先将数字5转换成字符串"5",并附加到字符串"test"后面,结果为"test"+5
注意:所有情况下,非字符串运算符使用字符串运算时,JavaScript都将其运算符转变成字符串:
* 数字值转换为相应的字符串值。
* 布尔值转换为1和0以支持数字运算。
* null值变成字符串运算的"null"或布尔false或数字运算0。
========================================
函数(Function)是进行特定任务的一组JavaScript代码,通常返回一个值。函数可能没有参数或有多个参数。参数指定函数要处理的数据。
JavaScript提供了3个显式的类型转换函数,分别是eval()、parseInt()和parseFloat()。
eval()函数:将字符串表达式转换成数字值。例如,语句total=eval("432.1*10")的结果是total=4321即将数值4321赋予total变量。
parseInt()函数:把字符串转换成整数。返回是从字符串的第一个字符开始,如果字符不是以整数开头则返回0。parseInt()函数还可以转换十六进制数或十进制数。
例如:parseInt("123xyz") 返回123,而parseInt("xyz")返回0。
parseFloat()函数:类似于parseInt()函数,它返回字符串上包含的第一个浮点数。如果字符串不以有效浮点数开头,则返回0。
例如:parseFloat("2.1e4xyz")返回21000;而parseFloat("xyz")返回0。