您的位置:首页 > Web前端 > JavaScript

JavaScript(六) 强制类型转换

2008-02-13 15:34 555 查看
强制类型转换,ECMAScript中可用的3种强制类型转换:

Boolean(value);

Number(value);

String(value);

Boolean强制类型转换

当转换的值是至少有一个字符的字符串,非0数字或者一个对象,Boolean()函数将返回true.

如果该值是空字符串,数字0,undefinited或null,它将返回false;

var b1=Boolean(""); //false - empty string

var b2=Boolean("hi"); // true - non-empty string

var b3=Boolean(100); //true non-zone number

var b4=Boolean(0); //false zero

var b5=Boolean(null); // false null

var b6=Boolean(new Object()); //true - object

var b7=Boolean(new Boolean("false")); //true - object 尽管他是一个new Boolean("false")

var oBooleanObject = new Boolean(false);

var oResult = oBooleanObject && true ; // true 这里要计算的是oBooleanObject 本身,而不是oBooleanObject 的值(false); 因为在Boolean表达式中,所有的对象都会自动转换为 true.

在ECMAScript中很少用到Boolean对象,即使使用,也很难理解,所以最好还是Boolean的原始值,避免发生上面的问题。

Number的强制类型转换

它与parseInt(),parseFloat()方法的处理方式相似.只是它转换的是整个值,而不是部分值. parseInt(),parseFloat()只转换第一个无效字符之前的字符串.

parseFloat("4.5.6") = 4.5;

Number("4.5.6") = NaN;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: