javascript中的if
来源:互联网 发布:牛顿环实验数据 编辑:程序博客网 时间:2024/04/30 06:07
block 1: 我们首先来看一段代码:
if(a){ console.log("I can enter!")}else{ console.log("I can not enter!")}
这段代码的输出如下:
I can enter!
这个a是个什么类型?他的值是多少?请花十秒钟时间想想这个问题。
block 2:我们接着看下一段代码:
var m1 = {a: "false", name: "Kent"};if (m1.a) { console.log("I am " + m1.name)} else { console.log("Who am I?")}
这段代码的输出如下:
I am Kent
block 3: 想到了点什么呢?我们接着往下看。
var m1 = {a: 100, name: "Kent"};if (m1.a) { console.log("It is " + m1.name + " again!");} else { console.log("Who am I?")}
这段代码的输出如下:
It is Kent again!
如果输出全在你的预料之内,那请无视这篇文章吧,反之则继续往下看吧。
javascript中的if只有少数几种情况下才会为false,我们尤其需要注意使用单个变量作为if表达式的情况。
javascript有几种类型:
● undefined——未定义;
● boolean——布尔值;
● string——字符串;
● number——数值;
● object——对象或null;
● function——函数;
其中undefined,boolean,string,number是基础类型或者叫简单类型,object,function为复杂类型。像数组啊什么的都是object类型。
在这里我就不离题太远了,以上六种类型,仅存在四种情况if为false。
- 数据类型为undefined时,if结果永远为false
- 当数据类型为boolean类型时,值为false时,if结果为false
- 当数据类型为object时,值为null时,if结果为false
- 负数为false
所以在写if判断的时候要先清楚,我这个变量是什么类型,而不能像在写java代码时只考虑他是个boolean类型的情况,理论上判断一个值是否为空,或者一个标签里的某个值或对象是否存在时,我们只需要一个
if(xx)
就可以搞定了,而不用去判断if(xx!=null)或if(xx!=”undefined”)之类的。
顺便说下json属性的的几种数据类型:
- 数字(整数或浮点数)
- 字符串(在双引号中)
- 逻辑值(true 或 false)
- 数组(在方括号中)
- 对象(在花括号中)
- null
所以从json中取值做逻辑判断我们要稍微注意点了。
之前做的总结有误,仅以下几种情况为false,以下引自javaScript权威指南
- undefined
- null
- 0
- -0
- NaN
- “” //空字符串
所有其他值,包括所有对象(数组)都会转换成true。
0 0
- 消除JavaScript中的if
- javascript中的if语句
- javascript中的if语句
- javascript中的if
- JavaScript中的if...else if...语句
- javaScript中的 if(123) | return | arguments对象
- JavaScript中的 ==、===、if()
- javascript: if语句中的判断条件,什么时候为假?
- javaScript中的if(变量)和if(变量== true)的区别
- JavaScript If...Else 语句
- javascript if条件判断
- JavaScript If...Else 语句
- JavaScript If...Else 语句
- javascript - if 条件
- javascript if条件判断
- JavaScript if判断条件
- JavaScript-if-else
- javascript中 if(!-[1,])
- 代码—递归
- Wordpress 禁止加载Google Front
- C语言笔记
- Rails中的content_tag与concat用法,可以连接任意html元素
- 简述Python爬虫
- javascript中的if
- 第十六周 OJ<2>---结构体---职工信息结构体
- jQuery在textarea光标处插入文本
- Ubuntu14.04 安装tomcat
- fedora 安装视频播放器mplayer
- (转)android Apk打包过程概述_android是如何打包apk的
- [NOIP2016] 蚯蚓
- 对象数组遍历
- 中国限制黄金进口防止人民币外流