JavaScript中奇葩的假值示例应用


Posted in Javascript onMarch 11, 2014

通常在以下语句结构中需要判断真假

if分支语句
while循环语句
for里的第二个语句


if (boo) { 
// do something 
} while (boo) { 
// do something 
}

JavaScript中有6个值为“假”,这六个值是

false
null
undefined
0
'' (空字符串)
NaN

这里面false本身是布尔类型,其它5个则不是。

除了这6个外,其它均为“真” ,包括对象、数组、正则、函数等。注意 '0'、'null'、'false'、{}、[]也都是真值 。

虽然这六个值都为“假”,它们之间并非都相等

console.log( false == null ) // false 
console.log( false == undefined ) // false 
console.log( false == 0 ) // true 
console.log( false == '' ) // true 
console.log( false == NaN ) // false console.log( null == undefined ) // true 
console.log( null == 0 ) // false 
console.log( null == '' ) // false 
console.log( null == NaN ) // false 
console.log( undefined == 0) // false 
console.log( undefined == '') // false 
console.log( undefined == NaN) // false 
console.log( 0 == '' ) // true 
console.log( 0 == NaN ) // false

对于“==”,以上得出下列结论

false 除了和自身比较为true外,和0,'' 也为true
null只和undefined比较时为true, 反过来undefined也仅和null比较为true,没有第二个
0除了和false比较为true,还有一个空字符串 ''
空字符串''出了和false比较为true,还有一个数字0

Javascript 相关文章推荐
不错的JS中变量相关的细节分析
Aug 13 Javascript
js捕获鼠标右键菜单中的粘帖事件实现代码
Apr 01 Javascript
javascript之typeof、instanceof操作符使用探讨
May 19 Javascript
javascript同页面多次调用弹出层具体实例代码
Aug 16 Javascript
table对象中的insertRow与deleteRow使用示例
Jan 26 Javascript
javascript中typeof操作符和constucor属性检测
Feb 26 Javascript
精彩的Bootstrap案例分享 重点在注释!(选项卡、栅格布局)
Jul 01 Javascript
利用Vue.js指令实现全选功能
Sep 08 Javascript
利用JS轻松实现获取表单数据
Dec 06 Javascript
Node.js pipe实现源码解析
Aug 12 Javascript
JavaScript ES6箭头函数使用指南
Dec 30 Javascript
详细教你微信公众号正文页SVG交互开发技巧
Jul 25 Javascript
Javascript加载速度慢的解决方案
Mar 11 #Javascript
js解析json读取List中的实体对象示例
Mar 11 #Javascript
JS图片无缝、平滑滚动代码
Mar 11 #Javascript
js 针对html DOM元素操作等经验累积
Mar 11 #Javascript
表单提交前触发函数返回true表单才会提交
Mar 11 #Javascript
php析构函数的具体用法小结
Mar 11 #Javascript
ie浏览器使用js导出网页到excel并打印
Mar 11 #Javascript
You might like
一个可以找出源代码中所有中文的工具
2006/10/25 PHP
PHP4 与 MySQL 数据库操作函数详解
2006/12/06 PHP
CodeIgniter控制器之业务逻辑实例分析
2016/01/20 PHP
详细解读php的命名空间(一)
2018/02/21 PHP
laravel 配置路由 api和web定义的路由的区别详解
2019/09/03 PHP
php-fpm超时时间设置request_terminate_timeout资源问题分析
2019/09/27 PHP
javascript 遍历验证所有文本框的值
2009/08/27 Javascript
灵活应用js调试技巧解决样式问题的步骤分享
2012/03/15 Javascript
js获取url参数代码实例分享(JS操作URL)
2013/12/13 Javascript
JS操作HTML自定义属性的方法
2015/02/10 Javascript
招聘网站基于jQuery实现自动刷新简历
2015/05/10 Javascript
JS出现失效的情况总结
2017/01/20 Javascript
jQuery实现获取隐藏div高度的方法示例
2017/02/09 Javascript
微信小程序开发图片拖拽实例详解
2017/05/05 Javascript
Python里隐藏的“禅”
2014/06/16 Python
Python实现迭代时使用索引的方法示例
2018/06/05 Python
有关Python的22个编程技巧
2018/08/29 Python
Python3爬虫学习之爬虫利器Beautiful Soup用法分析
2018/12/12 Python
如何用Python制作微信好友个性签名词云图
2019/06/28 Python
Python 脚本实现淘宝准点秒杀功能
2019/11/13 Python
python 的topk算法实例
2020/04/02 Python
matlab 计算灰度图像的一阶矩,二阶矩,三阶矩实例
2020/04/22 Python
Python编写memcached启动脚本代码实例
2020/08/14 Python
LORAC官网:美国彩妆品牌
2019/08/27 全球购物
应届大学生自荐信
2013/12/05 职场文书
岗位职责的构建方法
2014/02/01 职场文书
环境科学专业优秀毕业生自荐书
2014/02/03 职场文书
医德医风演讲稿
2014/05/20 职场文书
节约用电标语
2014/06/17 职场文书
国庆宣传标语
2014/06/30 职场文书
关于保护环境的建议书
2014/08/26 职场文书
活动主持人开场白
2015/05/28 职场文书
大一新生军训新闻稿
2015/07/17 职场文书
工作会议简报
2015/07/20 职场文书
退休劳动合同怎么写?
2019/10/25 职场文书
在前女友婚礼上,用Python破解了现场的WIFI还把名称改成了
2021/05/28 Python