使用javascript:将其它类型值转换成布尔类型值的解决方法详解


Posted in Javascript onMay 07, 2013

1.利用Boolean对象进行转换

var num123 = 123, str = 'abc', o = {name:'test'}, num0 = 0; num123 = Boolean(num123); //true num0 = Boolean(num0); //false str = Boolean(str); //true o = Boolean(o); //true

2. 利用两个'!'运算符,第一个'!'将值转换成布尔值并取其值的非值,第二个'!'将其布尔值还原,类似于“负负得正”的道理。

var num123 = 123, str = 'abc', o = {name:'test'}, num0 = 0; num123 = !!(num123); //true num0 = !!(num0); //false str = !!(str); //true o = !!(o); //true

得到的结果同方法1.

最后要知道:任意的javascript的值都可以转换成布尔值。下面这些值会被转换成false:

undefined,null,0,-0,NaN,"" //空字符串

需要注意的是'0'这个仅仅包含0的字符串会转成true!

补充一下null和undefined的特殊性:

null == undefined //true null === undefined //false
Javascript 相关文章推荐
从JavaScript的函数重名看其初始化方式
Mar 08 Javascript
JavaScript arguments 多参传值函数
Oct 24 Javascript
javascript小组件 原生table排序表格脚本(兼容ie firefox opera chrome)
Jul 25 Javascript
JQuery Tips相关(1)----关于$.Ready()
Aug 14 Javascript
JavaScript中的时间处理小结
Feb 24 Javascript
AngularJS使用自定义指令替代ng-repeat的方法
Sep 17 Javascript
基于JavaScript实现类名的添加与移除
Apr 23 Javascript
Vue路由切换时的左滑和右滑效果示例
May 29 Javascript
微信小程序 点击切换样式scroll-view实现代码实例
Oct 11 Javascript
js实现简单的打印表格
Jan 15 Javascript
Vue如何基于es6导入外部js文件
May 15 Javascript
使用jquery实现轮播图效果
Jan 02 jQuery
JQuery+CSS提示框实现思路及代码(纯手工打造)
May 07 #Javascript
基于IE下ul li 互相嵌套时的bug,排查,解决过程以及心得介绍
May 07 #Javascript
解决javascript:window.close()在chrome,Firefox下失效的问题
May 07 #Javascript
jQuery的slideToggle方法实例
May 07 #Javascript
jQuery实现动画效果的实例代码
May 07 #Javascript
nullJavascript中创建对象的五种方法实例
May 07 #Javascript
Js 代码中,ajax请求地址后加随机数防止浏览器缓存的原因
May 07 #Javascript
You might like
PHP编写daemon process 实例详解
2016/11/13 PHP
TNC vs BOOM BO3 第三场2.13
2021/03/10 DOTA
JSON 编辑器实现代码
2009/12/06 Javascript
Extjs在exlipse中设置自动提示的方法
2010/04/07 Javascript
HTML DOM的nodeType值介绍
2011/03/31 Javascript
DIV外区域Click后关闭DIV的实现代码
2011/12/21 Javascript
JS特殊函数(Function()构造函数、函数直接量)区别介绍
2013/05/19 Javascript
浅谈javascript中createElement事件
2014/12/05 Javascript
node.js中的fs.fsync方法使用说明
2014/12/15 Javascript
浅析JS原型继承与类的继承
2016/04/07 Javascript
js实现精确到秒的倒计时效果
2016/05/29 Javascript
使用Web Uploader实现多文件上传
2016/06/08 Javascript
Js动态设置rem来实现移动端字体的自适应代码
2016/10/14 Javascript
深入学习jQuery中的data()
2016/12/22 Javascript
vue v-on监听事件详解
2017/05/17 Javascript
浅谈Angular单元测试总结
2019/03/22 Javascript
使用 Angular RouteReuseStrategy 缓存(路由)组件的实例代码
2019/11/01 Javascript
[05:08]顺网杯ISS-DOTA2赛歌 少女偶像Lunar青春演绎
2013/12/05 DOTA
[06:25]第二届DOTA2亚洲邀请赛主赛事第二天比赛集锦.mp4
2017/04/03 DOTA
Python简单实现socket信息发送与监听功能示例
2018/01/03 Python
解决Python中list里的中文输出到html模板里的问题
2018/12/17 Python
Python3爬虫之自动查询天气并实现语音播报
2019/02/21 Python
pandas 如何分割字符的实现方法
2019/07/29 Python
Python generator生成器和yield表达式详解
2019/08/08 Python
Python时间序列缺失值的处理方法(日期缺失填充)
2019/08/11 Python
Python 在OpenCV里实现仿射变换—坐标变换效果
2019/08/30 Python
Python jieba库用法及实例解析
2019/11/04 Python
HTML5到底会有什么发展?HTML5的前景展望
2015/07/07 HTML / CSS
纽约JewelryAffairs珠宝店:精细金银时尚首饰
2017/02/05 全球购物
金讯Java笔试题目
2013/06/18 面试题
数据库方面面试题
2012/04/22 面试题
自我评价个人范文
2013/12/16 职场文书
小学教研工作制度
2014/01/15 职场文书
报到证办理个人委托书
2014/10/06 职场文书
pytorch显存一直变大的解决方案
2021/04/08 Python
MySQL实现字段分割一行转多行的示例代码
2022/07/07 MySQL