javascript类型转换

<script type="text/javascript">

//---------------转换成字符串------------------------
//ECMAScript的Boolean值、数字和字符串的原始值是伪对象,这意味着它们实际上具有属性和方法。例如:

var sColor="Red";
alert("伪对象的属性length值:"+sColor.length);
//尽管"Red"是原始类型的字符串,它仍然具有属性length,用于存放该字符串的大小。
//3中主要的原始值Boolean值 数字和字符串都有toString()方法,可以把他们的值转换成字符串
//Boolean类型的toString()方法只是输出true或者false,结果由变量的值决定
//Number类型的toString()方法有两种模式,比较特殊:默认模式和基本模式
var iNum=20.3;
alert("采用默认模式输出iNum的值:"+iNum.toString());//默认模式
alert("采用基本模式输出iNum的值"+iNum.toString(2));//基本模式
alert("采用基本模式输出iNum的值"+iNum.toString(8));//基本模式
alert("采用基本模式输出iNum的值"+iNum.toString(16));//基本模式


//--------------------------转换成数--------------------------
//parseInt()  把值转换为整数
//parseFloat()把值转换为浮点数
//这两个方法只能是String类型的才可以调用,其他类型返回的都是Nan

var sStr="23.4";
var iNum2=23;
var bIsEnabled=false;
alert(parseInt(sStr));
alert(parseInt(iNum2));
alert(parseInt(bIsEnabled));
alert(parseInt("1234Red"));//输出1234  取出前面有用的部分 忽略掉无效部分
alert(parseInt("123.45"));
alert(parseInt("0xA"));
//parseInt还有基本模式
alert("解析16进制"+parseInt("AF",16));
alert("parseInt()的基本模式"+parseInt("10",2));
alert("parseInt()的基本模式"+parseInt("10",8));
alert("parseInt()的基本模式"+parseInt("10",10));



//强制类型转换
//ECMAScript中可用的3中强制类型转换:
//Boolean  将给定的值转换为Boolean
//Number   把给定的值转换成数字
//String   把给定的值转换成字符串
//*这三个函数之一转换值,将创建一个新值,存放有原始值直接转转成的值。
//这会造成意向不到的后果。

var b1=Boolean("");//false --空字符串
var b2=Boolean("hi");//true  不是空字符串
var b3=Boolean(100);//true  非0的数字
var b4=Boolean(null);//false null
var b5=Boolean(0);//false zero
var b6=Boolean(new Object());//true object





</script>
原文地址:https://www.cnblogs.com/liszt/p/2073849.html