1:parseInt(string) : 这个函数的功能是从string的开头开始解析,返回一个整数
parseInt("123hua"); //输出 123 parseInt("123"); //输出 123 parseInt("12.3"); //输出 12 parseInt("hua"); //输出 Nan
2:另外parseInt()方法还有其他模式,就是可以把二进制、八进制、十六进制或其他任何进制的字符串转换成整数
parseInt("10", 16); //输出 16 parseInt("10", 2); //输出 2 parseInt("10s", 2); //输出 2 parseInt("10", 8); //输出 8 parseInt("10", 10); //输出 10 parseInt("0x10"); //输出 16 0x十六进制的表示
3.parseFloat():这个函数与parseInt()方法的处理方式相似。
parseFloat("123hua"); //输出 123 parseFloat("123"); //输出 123 parseFloat("12.3"); //输出 12.3 parseFloat("hua"); //输出 Nan
4.Number():强制类型转换,与parseInt()和parseFloat()方法的处理方式相似,只是它转换的是整个值,而不是部分值。
Number(false) //输出 0 Number(true) //输出 1 Number(undefined) //输出 NaN Number(null) //输出 0 Number("1.2") //输出 1.2 Number("12 ") //输出 12 Number("1.2.3 ") //输出 NaN Number(new Object()) //输出 NaN
5:Number 类型的 toString() 方法比较特殊,它有两种模式,即默认模式和基模式。
采用默认模式,toString() 方法只是用相应的字符串输出数字值(无论是整数、浮点数还是科学计数法)
var iNum = 10; alert(iNum.toString(2)); //输出 "1010" alert(iNum.toString(8)); //输出 "12" alert(iNum.toString(16)); //输出 "A" (12).toString(); //输出 "12" (12).toString(2); //输出 "1100" "12".toString(2); //输出 "12"
6:Boolean 类型的 toString() 方法只是输出 "true" 或 "false"
var bFound = false; alert(bFound.toString()); //输出 "false"
7:位运算符是在数字底层(即表示数字的 32 个数位)进行操作的。
位运算 NOT 由否定号(~)表示
//位运算 NOT 由否定号(~)表示 var iNum1 = 25; //25 等于 00000000000000000000000000011001 var iNum2 = ~iNum1; //转换为 11111111111111111111111111100110 alert(iNum2); //输出 "-26" //位运算 NOT 实质上是对数字求负,然后减 1,因此 25 变 -26 var iNum1 = 25; var iNum2 = -iNum1 - 1; alert(iNum2); //输出 -26
位运算 AND 由和号(&)表示,直接对数字的二进制形式进行运算,都是1为1,否则为0
var iNum1 = 25; //25 等于 0000 0000 0000 0000 0000 0000 0001 1001 var iNum2 = 3; //3 等于 0000 0000 0000 0000 0000 0000 0000 0011 alert(iNum1 & iNum2);//输出 //1 等于 0000 0000 0000 0000 0000 0000 0000 0001
位运算 OR 由符号(|)表示,也是直接对数字的二进制形式进行运算,都是0为0,否则为1
var iNum1 = 25; //25 等于 0000 0000 0000 0000 0000 0000 0001 1001 var iNum2 = 3; //3 等于 0000 0000 0000 0000 0000 0000 0000 0011 alert(iNum1 | iNum2);//输出 //27 等于 0000 0000 0000 0000 0000 0000 0001 1011
位运算 XOR 由符号(^)表示,当然,也是直接对二进制形式进行运算,不同为1,相同为0
var iNum1 = 25; //25 等于 0000 0000 0000 0000 0000 0000 0001 1001 var iNum2 = 3; //3 等于 0000 0000 0000 0000 0000 0000 0000 0011 alert(iNum1 ^ iNum2);//输出 //26 等于 0000 0000 0000 0000 0000 0000 0001 1010
左移运算由两个小于号表示(<<)。它把数字中的所有数位向左移动指定的数量。
var iNum1 = 2; //等于二进制 10 var iNum2 = iNum1 << 5; //等于二进制 1000000 十进制 64