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 相关文章推荐
js中AppendChild与insertBefore的用法详细解析
Dec 16 Javascript
SeaJS入门教程系列之完整示例(三)
Mar 03 Javascript
吐槽一下我所了解的Node.js
Oct 08 Javascript
让JavaScript中setTimeout支持链式操作的方法
Jun 19 Javascript
javascript图片预加载实例分析
Jul 16 Javascript
JavaScript中常用的验证reg
Oct 13 Javascript
Vue.js学习之过滤器详解
Jan 22 Javascript
基于vue2框架的机器人自动回复mini-project实例代码
Jun 13 Javascript
vue-cli3项目展示本地Markdown文件的方法
Jun 07 Javascript
js中值引用和地址引用实例分析
Jun 21 Javascript
javascript中的this作用域详解
Jul 15 Javascript
JavaScript字符串转数字的简单实现方法
Nov 27 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 zip扩展Linux下安装过程分享
2014/05/05 PHP
PHP图像处理类库MagickWand用法实例分析
2015/05/21 PHP
yii的入口文件index.php中为什么会有这两句
2016/08/04 PHP
JavaScript中数组的排序、乱序和搜索实现代码
2011/11/30 Javascript
页面元素绑定jquery toggle后元素隐藏的解决方法
2014/03/27 Javascript
一个用jquery写的判断div滚动条到底部的方法【推荐】
2016/04/29 Javascript
必备的JS调试技巧汇总
2016/07/20 Javascript
利用js+css+html实现固定table的列头不动
2016/12/08 Javascript
Angularjs分页查询的实现
2017/02/24 Javascript
AngularJS解决ng-if中的ng-model值无效的问题
2017/06/21 Javascript
微信小程序实现拖拽 image 触摸事件监听的实例
2017/08/17 Javascript
React+react-dropzone+node.js实现图片上传的示例代码
2017/08/23 Javascript
使用VUE+iView+.Net Core上传图片的方法示例
2019/01/04 Javascript
通过JS判断网页是否为手机打开
2020/10/28 Javascript
js实现鼠标切换图片(无定时器)
2021/01/27 Javascript
python实现在每个独立进程中运行一个函数的方法
2015/04/23 Python
理解Python中函数的参数
2015/04/27 Python
详解在Python的Django框架中创建模板库的方法
2015/07/20 Python
解决python2.7 查询mysql时出现中文乱码
2016/10/09 Python
Python中顺序表的实现简单代码分享
2018/01/09 Python
Python cookbook(数据结构与算法)在字典中将键映射到多个值上的方法
2018/02/18 Python
如何在python中写hive脚本
2019/11/08 Python
Tensorflow 实现将图像与标签数据转化为tfRecord文件
2020/02/17 Python
Django实现将views.py中的数据传递到前端html页面,并展示
2020/03/16 Python
TensorFlow中如何确定张量的形状实例
2020/06/23 Python
浅谈tensorflow 中的图片读取和裁剪方式
2020/06/30 Python
使用Python实现NBA球员数据查询小程序功能
2020/11/09 Python
Python使用cn2an实现中文数字与阿拉伯数字的相互转换
2021/03/02 Python
使用Html5多媒体实现微信语音功能
2019/07/26 HTML / CSS
Canvas多边形绘制的实现方法
2019/08/05 HTML / CSS
高品质和独特的产品世界:Creations and Collections
2018/01/07 全球购物
Unix/Linux开发面试题
2016/08/16 面试题
授权委托书
2015/01/28 职场文书
暂住证证明
2015/06/19 职场文书
2015国庆66周年宣传语
2015/07/14 职场文书
在CSS中使用when/else的方法
2022/01/18 HTML / CSS