值类型:Number String Boolean undefined
引用类型:对象、数组、函数
强制类型转换
1、字符串拼接
var b = 100 + "10" => 10010
2、==运算符
100 == '100' => true
0 == '' => true
null == undefined => true
3、if语句
var b = 100 => true
if(b){}
var c = '' => false
if(c){}
false的情况:0、NaN、''、null、undefined、false
4、逻辑运算
10 && 0 => 0
'' || 'abc' => 'abc'
!window.abc => true
判断一个变量会被当做true还是false: var a = 100; console.log(!!a);
5、计算符号
'5'-2=3
'5'+2="52"
'2'*6=12
null + 45=45
undefined + 45=NaN
null + '45'="null45"
使用==的地方:判断一个对象的属性是否存在时 if(obj.a==null){},其余地方用=== (jQuery源码)
JSON不仅是数据格式,而且是一个JS对象,有两个API:JSON.stringify,JSON.parse
引用类型:对象、数组、函数
强制类型转换
1、字符串拼接
var b = 100 + "10" => 10010
2、==运算符
100 == '100' => true
0 == '' => true
null == undefined => true
3、if语句
var b = 100 => true
if(b){}
var c = '' => false
if(c){}
false的情况:0、NaN、''、null、undefined、false
4、逻辑运算
10 && 0 => 0
'' || 'abc' => 'abc'
!window.abc => true
判断一个变量会被当做true还是false: var a = 100; console.log(!!a);
5、计算符号
'5'-2=3
'5'+2="52"
'2'*6=12
null + 45=45
undefined + 45=NaN
null + '45'="null45"
使用==的地方:判断一个对象的属性是否存在时 if(obj.a==null){},其余地方用=== (jQuery源码)
JSON不仅是数据格式,而且是一个JS对象,有两个API:JSON.stringify,JSON.parse