JavaScript 检测值

了解常见的真值和假值,可以增强判断能力。在使用if判断时,提升编码速度。

了解常见的检测和存在,一样可以增强判断能力,而且是必须掌握的。

数组和对象被视为真值

 1 var shoppingCart=['鞋','连衣裙','皮带'];
 2 println(Boolean(shoppingCart));
 3  
 4 var person={};//字面量创建对象
 5  
 6 // 设置字面量对象属性
 7 person.name='huangshiren';
 8 person.age=58;
 9 person.appetite=3;
10 person.eat=function(){
11     document.write('正在吃饭');
12 }
13  
14 println(Boolean(person));
15  
16 function println(a){
17     document.write(a+'<br>');
18 }

严格等于下的特殊值

false与0与''

表达式  结果
(false==0) true
(false===0) false
(false=='') true
(false==='') false
(0=='') true
(0==='') false

示例

 1 println(false==0);
 2 println(false===0);
 3 println(false=='');
 4 println(false==='');
 5 println(0=='');
 6 println(0==='');
 7  
 8 function println(a){
 9     document.write(a+'<br>');
10 }

null与undefined

null和undefined都是假值。null和undefined相等,undefined和undefined相等,null和null相等。

 表达式  结果
(undefined==null) true
(null==false) false
(undefined==false) false
(null==0) false
(undefined==0) false
(undefined===null) false

示例

 1 println(undefined==true);
 2 println(undefined===true);
 3 println(undefined==false);
 4 println(undefined===false);
 5 println(undefined==null);
 6 println(undefined===null);
 7 println(undefined==0);
 8 println(undefined===0);
 9 println(null==0);
10 println(null===0);
11 println(null==false);
12 println(null===false);
13 println(null==true);
14 println(null===true);
15  
16 function println(a){
17     document.write(a+'<br>');
18 }

NaN和null

NaN为假值,NaN不等于任何值

 表达式  结果
(NaN==null) false
(NaN==NaN) false
posted @ 2019-06-19 20:41  JackSon~鹤  阅读(140)  评论(0编辑  收藏  举报