JavaScript.The.Good.Parts阅读笔记(一)假值与===运算符


Posted in Javascript onNovember 16, 2010

JavaScript的假值列表如下,

 

 类型
0 Number
NaN (非数字) Number
'' (空字符串) String
false Boolean
null Object
undefined Undefined
以上的值作为判断条件,都将为假值,如:
if(undefined) { 
alert('undefined'); //这行代码不会执行 
} 
while(null) 
{ 
alert('null'); //这行代码不会执行 
}

虽然这些值全部都等同于假,但它们是不可互换的。
下面列出一些例子 :
undefined === null //false
undefined == null //true

甚至
NaN === NaN //false
NaN == NaN //false
PS:NaN跟NaN无论用哪种运算都不相等,可以用IsNaN(NaN)来解决NaN的判断问题。

==(!=)运算符会进行强制类型转换,而且转换规则相当诡异。下面是一些例子。

'' == '0' // false 
0 == '' // true 
0 == '0' // true 
false == 'false' // false 
false == '0' // true 
false == undefined // false 
false == null // false 
null == undefined // true 
' \t\r\n ' == 0 // true

建议使用===(!===)运算符。
Javascript 相关文章推荐
关于IE浏览器以及Firefox下的javascript冒泡事件的响应层级
Oct 14 Javascript
js中判断Object、Array、Function等引用类型对象是否相等
Aug 29 Javascript
jquery js 获取时间差、时间格式具体代码
Jun 05 Javascript
jquery基础教程之deferred对象使用方法
Jan 22 Javascript
javascript记录文本框内文字个数检测文字个数变化
Oct 14 Javascript
js实现绿白相间竖向网页百叶窗动画切换效果
Mar 02 Javascript
js控住DOM实现发布微博效果
Aug 30 Javascript
react.js 翻页插件实例代码
Jan 19 Javascript
vue.js在标签属性中插入变量参数的方法
Mar 06 Javascript
解决Angular2 router.navigate刷新页面的问题
Aug 31 Javascript
Vue+Koa2 打包后进行线上部署的教程详解
Jul 31 Javascript
javascript 数组(list)添加/删除的实现
Dec 17 Javascript
javascript Array对象基础知识小结
Nov 16 #Javascript
纯js实现背景图片切换效果代码
Nov 14 #Javascript
基于jquery的自定义鼠标提示效果 jquery.toolTip
Nov 14 #Javascript
cnblogs中在闪存中屏蔽某人的实现代码
Nov 14 #Javascript
基于MooTools的很有创意的滚动条时钟动画
Nov 14 #Javascript
javascript 学习笔记(onchange等)
Nov 14 #Javascript
javascript取消文本选定的实现代码
Nov 14 #Javascript
You might like
无数据库的详细域名查询程序PHP版(4)
2006/10/09 PHP
PHP中使用数组指针函数操作数组示例
2014/11/19 PHP
php中使用sftp教程
2015/03/30 PHP
PHP实现双链表删除与插入节点的方法示例
2017/11/11 PHP
php单元测试phpunit入门实例教程
2017/11/17 PHP
js修改input的type属性问题探讨
2013/10/12 Javascript
js阻止默认事件与js阻止事件冒泡示例分享 js阻止冒泡事件
2014/01/27 Javascript
jQuery控制DIV层实现由大到小,由远及近动画变化效果
2015/10/09 Javascript
javascript函数式编程程序员的工具集
2015/10/11 Javascript
详解微信小程序开发之城市选择器 城市切换
2017/01/17 Javascript
微信小程序 scroll-view实现上拉加载与下拉刷新的实例
2017/01/21 Javascript
jQuery使用bind函数实现绑定多个事件的方法
2017/10/11 jQuery
详解Puppeteer 入门教程
2018/05/09 Javascript
微信小程序拍照和摄像功能实现方法示例
2019/02/01 Javascript
基于JS实现一个随机生成验证码功能
2019/05/29 Javascript
写给新手同学的vuex快速上手指北小结
2020/04/14 Javascript
用Python输出一个杨辉三角的例子
2014/06/13 Python
python 异常处理总结
2016/10/18 Python
解决python2.7用pip安装包时出现错误的问题
2017/01/23 Python
基于Linux系统中python matplotlib画图的中文显示问题的解决方法
2017/06/15 Python
python基础while循环及if判断的实例讲解
2017/08/25 Python
MAC中PyCharm设置python3解释器
2017/12/15 Python
python针对不定分隔符切割提取字符串的方法
2018/10/26 Python
python程序运行进程、使用时间、剩余时间显示功能的实现代码
2019/07/11 Python
Matplotlib animation模块实现动态图
2021/02/25 Python
法国发饰品牌:Alexandre De Paris
2018/12/04 全球购物
Bibloo匈牙利:女装、男装、童装及鞋子和配饰
2019/04/14 全球购物
香港零食网购:上仓胃子
2020/06/08 全球购物
面向中国市场的在线海淘美妆零售网站:Beauty House美丽屋
2021/03/02 全球购物
获奖的大学生创业计划书
2014/01/05 职场文书
建材投资建议书
2014/05/16 职场文书
租车协议书
2015/01/27 职场文书
毕业典礼致辞
2015/07/29 职场文书
2017年寒假社区服务活动总结
2016/04/06 职场文书
Python制作表白爱心合集
2022/01/22 Python
Python OpenCV之常用滤波器使用详解
2022/04/07 Python