首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

慎用基本部类的包装类

2012-11-22 
慎用基本类型的包装类浏览网页无意中看到的,条件判断时强制强其转换成Boolean型。对于JavaScript来说在需要

慎用基本类型的包装类

浏览网页无意中看到的,条件判断时强制强其转换成Boolean型。对于JavaScript来说在需要用到Boolean时会动态转换。


var b = new Boolean(false);if(b){alert(5); // 弹出}
?当Boolean的参数是false,0,null,undefined时,b将是一个对象,if(b)中的b将为真,后续代码会执行。因此不要这么干。
去掉 new 则是没问题的。
var b = Boolean(false);if(b){alert(5); // 不会弹出}
?当然也可以用这种方式方便的实现类型转换,如
var a = Number('22');typeof a; // numbervar b = Boolean('null');typeof b; // booleanvar c = String(33);typeof c; // string
?
1 楼 笨笨狗 2010-09-02   有new和没有new,行为是不同的(new的话返回包装对象,直接调用返回经过类型转换后的另一个“原始值”),这个在javascript权威指南的API参考部分有详细说明:) 2 楼 zhouyrt 2010-09-03   笨笨狗 写道有new和没有new,行为是不同的(new的话返回包装对象,直接调用返回经过类型转换后的另一个“原始值”),这个在javascript权威指南的API参考部分有详细说明:)

谢谢您的提醒。

热点排行