使用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 相关文章推荐
JQuery 表格操作(交替显示、拖动表格行、选择行等)
Jul 29 Javascript
javascript 面向对象,实现namespace,class,继承,重载
Oct 29 Javascript
基于JQuery框架的AJAX实例代码
Nov 03 Javascript
用unescape反编码得出汉字示例
Apr 24 Javascript
JavaScript设计模式之观察者模式(发布者-订阅者模式)
Sep 24 Javascript
jquery实现无限分级横向导航菜单的方法
Mar 12 Javascript
简介JavaScript中的getUTCFullYear()方法的使用
Jun 10 Javascript
jquery实现全屏滚动
Dec 28 Javascript
纯JS焦点图特效实例(可一个页面多用)
Dec 07 Javascript
微信小程序 数据遍历的实现
Apr 05 Javascript
js canvas实现橡皮擦效果
Dec 20 Javascript
vue如何实现关闭对话框后刷新列表
Apr 08 Vue.js
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
分页显示Oracle数据库记录的类之一
2006/10/09 PHP
PHP5.3以上版本安装ZendOptimizer扩展
2015/03/27 PHP
PHP实现websocket通信的方法示例
2018/08/28 PHP
laravel 解决多库下的DB::transaction()事务失效问题
2019/10/21 PHP
JavaScript 常见对象类创建代码与优缺点分析
2009/12/07 Javascript
用apply让javascript函数仅执行一次的代码
2010/06/27 Javascript
javascript延时加载之defer测试
2012/12/28 Javascript
如何动态的导入js文件具体该怎么实现
2014/01/14 Javascript
js时间日期格式化封装函数
2014/12/02 Javascript
详解javascript传统方法实现异步校验
2016/01/22 Javascript
javascript每日必学之继承
2016/02/23 Javascript
Javascript基础学习笔记(菜鸟必看篇)
2016/07/22 Javascript
基于Vue.js实现简单搜索框
2020/03/26 Javascript
JS的函数调用栈stack size的计算方法
2018/06/24 Javascript
详解微信小程序input标签正则初体验
2018/08/18 Javascript
node和vue实现商城用户地址模块
2018/12/05 Javascript
OpenLayers加载缩放控件使用方法详解
2020/09/25 Javascript
[05:05]给小松五分钟系列 第二期介绍为什么打DOTA2
2014/07/02 DOTA
深入解析Python的Tornado框架中内置的模板引擎
2016/07/11 Python
python web基础之加载静态文件实例
2018/03/20 Python
Python3.6简单反射操作示例
2018/06/14 Python
使用Python进行体育竞技分析(预测球队成绩)
2019/05/16 Python
pyqt5让图片自适应QLabel大小上以及移除已显示的图片方法
2019/06/21 Python
django 快速启动数据库客户端程序的方法示例
2019/08/16 Python
基于Python的微信机器人开发 微信登录和获取好友列表实现解析
2019/08/21 Python
Ubuntu20.04环境安装tensorflow2的方法步骤
2021/01/29 Python
用CSS3实现无限循环的无缝滚动的示例代码
2017/11/01 HTML / CSS
Html5 Canvas动画基础碰撞检测的实现
2018/12/06 HTML / CSS
工程造价专业大学生自荐信
2013/10/01 职场文书
房屋买卖协议书范本
2014/04/10 职场文书
《菜园里》教学反思
2014/04/17 职场文书
人事行政主管岗位职责
2015/04/09 职场文书
学校扫黄打非工作总结
2015/10/15 职场文书
SpringCloud之@FeignClient()注解的使用方式
2021/09/25 Java/Android
vue3获取当前路由地址
2022/02/18 Vue.js
解决Mysql报错 Table 'mysql.user' doesn't exist
2022/05/06 MySQL