ECMAScript定義了6種數據類型,包括:jquery
typeof操做符可區分值類型,對於引用數據類型沒法區分(只能區分出引用類型中的function)。數組
*判斷一個對象(引用類型)是否爲數組:arr instanceof Array,返回true、false。函數
typeof undefined;//undefined typeof 'abc';//string typeof 123;//number typeof true;//boolean typeof {};//object typeof [];//object typeof null;//object typeof console.log;//function
//值類型(Number,String,Boolean,Undefined) var a = 100; var b = a; a = 200; console.log(a);//200 console.log(b);//100 //引用類型(Object,Array,Function) var a = {age:20}; var b = a; b.age = 21; console.log(a.age);//21 console.log(b.age);//21
//1.字符串拼接 var a = 100 + 10;//110 var b = 100 + '10';//10010 //2.== 運算符 100 == '100'; //true 0 == '';//true null == undefined;//true 0 === '';//false null === undefined;//false //3.if 語句 var a = true;if(a){} var b = 100;if(b){} var c = '';if(c){} //4.邏輯運算符 console.log(10&&0);//0 console.log(''||'abc');//'abc' console.log(!window.abc);//true //判斷一個變量會被當作true仍是false var a = 100; console.log(!!a);
==會發生類型轉換,===沒有類型轉換。code
if(obj.a == null){ //這裏至關於判斷了obj.a === null || obj.a === undefined;簡寫形式 //這是 jquery 源碼中推薦的寫法 }
JSON是一種數據格式,也是一個 JS 對象,有如下兩個API。對象
技巧:
可將if語句轉換爲false的有if(0
){}、if(NaN
){}、if(''
){}、if(null
){}、if(undefined
){}、if(false
){}