javascript下将字符类型转换成布尔值

               

办不到!孙子,我告诉你,这办不到!

比如说,

var sb = "false";alert(!!sb);//结果显示true!

事前是想得很美的:

sb == "false"

那么

!sb == true

那么

!!sb == false

这样,就将 sb 由"false" 转换成真正的布尔值 false 矣。

但铁一般的事实证明:想得美,但长得丑:

sb == "false",!sb == false !因为sb是一个非空字符串,非空字符串的结果永远是真!系统不会因为这个字符串是"false"就特殊对待!


以往,我们要将一个字符串转换成数字,其实也可以 乘以1或者乘以-1,但布尔值不行。

网上的答案是不转换,可以用恒等来比较

if( sb === "false")

有关恒等(===)和相等(==)的比较,可以看参考文章:

http://www.cnblogs.com/litsword/archive/2010/07/22/1782933.html


           

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

猜你喜欢

转载自blog.csdn.net/hddfuuh/article/details/86482738