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

JS中!!的用法

? ?现有一js函数,参数为bool型的,如下:

?

function fun(isNumberflag){

?var numberValue=isNumberflag;

? .…… //numberValue值在后面的代码中有用到

}

?

? ? ?现在的问题是,怎么保证numberValue的值是bool型的?js是弱类型的语言,所以不能像java一自动检查给numberValue赋的值是否是bool类型。而!!就能解决这个问题。

? ? ?var numberValue=!!isNumberflag; ? ? //如果isNumberflag明确设置了变量的值(非null/undifined/0/""等值),结果就会根据isNumberflag的实际值来返回,如果没有设置,结果就会返回false。这样就保证了numberValue的值都只能在true/false中取,而非其它值,为后续判断提供便利。