强制: parseInt(), parseFloat(), Number(), Boolean(), String()
隐式: +, -
代码演示:
// 1.parseInt() 把值转换成整数 parseInt("1234blue"); // 1234 parseInt("0xA"); // 10 parseInt("22.5"); // 22 parseInt("blue"); // NaN // parseInt()方法还有基模式,可以把二进制、八进制、十六进制或其他任何进制的字符串转换成整数。基是由parseInt()方法的第二个参数指定的,示例如下: parseInt("AF", 16); // 175 parseInt("10", 2); // 2 parseInt("10", 8); // 8 parseInt("10", 10); // 10 // 如果十进制数包含前导0,那么最好采用基数10,这样才不会意外地得到八进制的值。例如: parseInt("010"); // 8 parseInt("010", 8); // 8 parseInt("010", 10); // 10 // 2.parseFloat() 把值转换成浮点数,没有基模式 parseFloat("1234blue"); // 1234.0 parseFloat("0xA"); // NaN parseFloat("22.5"); // 22.5 parseFloat("22.34.5"); // 22.34 parseFloat("0908"); // 908 parseFloat("blue"); // NaN // 3.Number() 把给定的值转换成数字(可以是整数或浮点数),Number()的强制类型转换与parseInt()和parseFloat()方法的处理方式相似,只是它转换的是整个值,而不是部分值。示例如下: Number(false) // 0 Number(true) // 1 Number(undefined) // NaN Number(null) // 0 Number("5.5") // 5.5 Number("56") // 56 Number("5.6.7") // NaN Number(new Object()) // NaN Number(100) // 100 // 4.Boolean() 把给定的值转换成Boolean型 Boolean(""); // false Boolean("hi"); // true Boolean(100); // true Boolean(null); // false Boolean(0); // false Boolean(new Object()); // true // 5.String() 把给定的值转换成字符串 String(123) // "123" // 6.+ - console.log(0 + '1') // "01" console.log(2 - '1') // 1