日期:2014-05-16  浏览次数:20405 次

js 高级学习笔记 ( 六 ) 类型转换

1, ECMAScript 中的类型转换时简单的, 也有全局方法用来处理稍微复杂一点的转换 . ?

?

2, ?boolean , 数字 ?字符串 都是伪对象 ? 都有toString()方法.?

?

? ? ?默认的toString()方法返回的数值都是10进制的.?

? ? ?要想返回

?

var iNum = 10;
alert(iNum.toString(2));	//输出 "1010"
alert(iNum.toString(8));	//输出 "12"
alert(iNum.toString(16));	//输出 "A"        10 -->A
?

3, ?parseInt() 方法?

?

? ? parseInt() 将查看位置0处的字符 , 如果不是数字 就返回NaN ,如果是数字就继续下一个判断, 直到不是数字为止, 也就是说即使 后面有 不是数字的字符 只要第一个是数字 ,他还是会把前面数字的部分返回, 就像 第一个例子那样 ...

?

var iNum1 = parseInt("12345red");	//返回 12345
var iNum1 = parseInt("0xA");	//返回 10
var iNum1 = parseInt("56.9");	//返回 56
var iNum1 = parseInt("red");	//返回 NaN

?

? ?对 二进制, 八进制, 十六进制 也有相应的parseInt() ;

?

var iNum1 = parseInt("AF", 16);	 //返回 175
var iNum1 = parseInt("10", 2);	        //返回 2
var iNum2 = parseInt("10", 8);	       //返回 8
var iNum3 = parseInt("10", 10);     //返回 10

?

? ?如果数字前面有 0 , 的话 就会当成八进制数处理 ,?

?

var iNum1 = parseInt("010");	//返回 8
var iNum2 = parseInt("010", 8);	//返回 8
var iNum3 = parseInt("010", 10);	//返回 10

?

?

4, ?parseFloat()

?

? ?只能是十进制的数字 , 而且第二个小数点后面的内容会被忽略?

var fNum1 = parseFloat("12345red");	//返回 12345
var fNum2 = parseFloat("0xA");	        //返回 NaN
var fNum3 = parseFloat("11.2");	        //返回 11.2
var fNum4 = parseFloat("11.22.33");        //返回 11.22
var fNum5 = parseFloat("0102");	       //返回 102
var fNum1 = parseFloat("red");	               //返回 NaN
?

5, ?强制类型转换?

?

?

? ? ? 有三种方法 Boolean() , Number(), String() ;

?

6, ?Boolean() 方法?

?

var bValue = Boolean("");            // false
var  bValue = Boolean(null);     //  false
var  bvalue = Boolean(0);            //  false
-----
var  bValue2 = Boolean("hi")       //true 
var  bValue2 = Boolean(20)         //true
var  bValue2 = Boolean(new Object())    //true
  

?

? ?当空字符串, null/undefined, 数字0 时返回false ;

? ?其他情况为true?

?

?

7, Number() ?函数

?

用法 结果
友情链接: 爱易网 云虚拟主机技术 云服务器技术 程序设计技术 开发网站 APP开发教程
Copyright © 2013-2024 爱易网页 当前在线:1139人  网站在9时51分16秒内访问总人数:134815人 当前 57.15%  粤ICP备18100884号-2
Number(false) 0
Number(true) 1
Number(undefined) NaN
Number(null) 0
Number("1.2") 1.2
Number("12")