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 相关文章推荐
javascript 写类方式之一
Jul 05 Javascript
两个select多选模式的选项相互移动(示例代码)
Jan 11 Javascript
javascript读写json示例
Apr 11 Javascript
jQuery学习笔记之 Ajax操作篇(一) - 数据加载
Jun 23 Javascript
js实现带有介绍的Select列表菜单实例
Aug 18 Javascript
jqPlot jQuery绘图插件的使用
Jun 18 Javascript
浅谈$('div a') 与$('div>a')的区别
Jul 18 Javascript
详谈innerHTML innerText的使用和区别
Aug 18 Javascript
laydate时间日历插件使用方法详解
Nov 14 Javascript
微信JSSDK实现打开摄像头拍照再将相片保存到服务器
Nov 15 Javascript
js实现简单进度条效果
Mar 25 Javascript
通过实例了解Render Props回调地狱解决方案
Nov 04 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 调用远程url的六种方法小结
2009/11/02 PHP
php入门学习知识点二 PHP简单的分页过程与原理
2011/07/14 PHP
解析百度搜索结果link?url=参数分析 (全)
2012/10/09 PHP
php+xml结合Ajax实现点赞功能完整实例
2015/01/30 PHP
YII2框架使用控制台命令的方法分析
2020/03/18 PHP
文本链接逐个出现的js脚本
2007/12/12 Javascript
jquery实现的让超出显示范围外的导航自动固定屏幕最顶上
2011/09/22 Javascript
javascript仿qq界面的折叠菜单实现代码
2012/12/12 Javascript
3种Jquery限制文本框只能输入数字字母的方法
2014/12/03 Javascript
Javascript实现Web颜色值转换
2015/02/05 Javascript
微信小程序 for 循环详解
2016/10/09 Javascript
JS用斜率判断鼠标进入DIV四个方向的方法
2016/11/07 Javascript
清除js缓存的多种方法总结
2016/12/09 Javascript
JS+canvas画布实现炫酷的旋转星空效果示例
2019/02/13 Javascript
js图数据结构处理 迪杰斯特拉算法代码实例
2019/09/11 Javascript
Vue js with语句原理及用法解析
2020/09/03 Javascript
Vue实现省市区三级联动
2020/12/27 Vue.js
[01:55]2014DOTA2国际邀请赛快报:国土生病 紧急去医院治疗
2014/07/10 DOTA
[57:55]EG vs Fnatic 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
解决windows下Sublime Text 2 运行 PyQt 不显示的方法分享
2014/06/18 Python
python脚本实现查找webshell的方法
2014/07/31 Python
处理Python中的URLError异常的方法
2015/04/30 Python
开始着手第一个Django项目
2015/07/15 Python
Python使用设计模式中的责任链模式与迭代器模式的示例
2016/03/02 Python
python中对_init_的理解及实例解析
2019/10/11 Python
美国二手复古奢侈品包包购物网站:LXRandCo
2019/06/18 全球购物
银行营业厅大堂经理岗位职责
2014/01/06 职场文书
服务承诺书范文
2014/05/19 职场文书
理想点亮人生演讲稿
2014/05/21 职场文书
少先队辅导员事迹材料
2014/12/24 职场文书
故宫的导游词
2015/01/31 职场文书
世界气象日活动总结
2015/02/27 职场文书
工作失职检讨书范文
2015/05/05 职场文书
讲座新闻稿
2015/07/18 职场文书
谢师宴学生答谢词
2015/09/30 职场文书
青年干部培训班学习心得体会
2016/01/06 职场文书