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 相关文章推荐
javascript 保存文件到本地实现方法
Nov 29 Javascript
基于jQuery实现网页进度显示插件
Mar 04 Javascript
jQuery 特性操作详解及实例代码
Sep 29 Javascript
基于iscroll.js实现下拉刷新和上拉加载效果
Nov 28 Javascript
JavaScript中清空数组的方法总结
Dec 02 Javascript
vue实现一个移动端屏蔽滑动的遮罩层实例
Jun 08 Javascript
JavaScript实现三级联动菜单实例代码
Jun 26 Javascript
jQuery接受后台传递的List的实例详解
Aug 02 jQuery
swiper在vue项目中loop循环轮播失效的解决方法
Sep 15 Javascript
为什么要使用Vuex的介绍
Jan 19 Javascript
js实现html滑动图片拼图验证
Jun 24 Javascript
关于vue 结合原生js 解决echarts resize问题
Jul 26 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
ECMall支持SSL连接邮件服务器的配置方法详解
2014/05/19 PHP
PHP基于单例模式实现的mysql类
2016/01/09 PHP
CentOS系统中PHP安装扩展的方式汇总
2017/04/09 PHP
使用JQUERY Tabs插件宿主IFRAMES
2010/01/01 Javascript
JavaScript高级程序设计 阅读笔记(二十一) JavaScript中的XML
2012/09/14 Javascript
jquery使用淘宝接口跨域查询手机号码归属地实例
2013/11/28 Javascript
js鼠标及对象坐标控制属性详细解析
2013/12/14 Javascript
js调用百度地图及调用百度地图的搜索功能
2015/09/07 Javascript
JS实现自定义简单网页软键盘效果代码
2015/11/05 Javascript
Sortable.js拖拽排序使用方法解析
2016/11/04 Javascript
学习React中ref的两个demo示例
2018/08/14 Javascript
vue实现简易图片左右旋转,上一张,下一张组件案例
2020/07/31 Javascript
[41:52]2018DOTA2亚洲邀请赛3月29日小组赛B组Effect VS Secret
2018/03/30 DOTA
pandas DataFrame的修改方法(值、列、索引)
2019/08/02 Python
详解基于python-django框架的支付宝支付案例
2019/09/23 Python
如何使用pandas读取txt文件中指定的列(有无标题)
2020/03/05 Python
python函数中将变量名转换成字符串实例
2020/05/11 Python
Idea安装python显示无SDK问题解决方案
2020/08/12 Python
python按照list中字典的某key去重的示例代码
2020/10/13 Python
python statsmodel的使用
2020/12/21 Python
一款基于css3麻将筛子3D翻转特效的实例教程
2014/12/31 HTML / CSS
css3新单位vw、vh的使用教程
2018/03/23 HTML / CSS
Zooplus葡萄牙:欧洲领先的网上宠物商店
2018/07/01 全球购物
Vilebrequin美国官方网上商店:法国豪华泳装品牌
2020/02/22 全球购物
美容师的职业规划书
2013/12/27 职场文书
公司前台辞职报告
2014/01/19 职场文书
优秀团员自我评价范文
2014/04/23 职场文书
政府采购方案
2014/06/12 职场文书
环保公益策划方案
2014/08/15 职场文书
党员作风建设整改方案
2014/10/27 职场文书
计划生育工作汇报
2014/10/28 职场文书
2014年班组长工作总结
2014/11/20 职场文书
自我工作评价范文
2015/03/06 职场文书
2015年环卫工作总结
2015/04/28 职场文书
用Python写一个简易版弹球游戏
2021/04/13 Python
不要在HTML中滥用div
2021/05/08 HTML / CSS