js基本類型

ES5共有5種基本類型,分別爲number,string,null,undefined,boolean,ES6新增了symbol.

console.log(typeof undefined); 輸出爲undefined

console.log(typeof null); 輸出爲object

console.log(typeof [1]); 輸出爲object

console.log(typeof 1); 輸出爲number

console.log(typeof "1"); 輸出爲string

console.log(typeof true); 輸出爲boolean

任何對象轉化爲布爾值時,if判斷都爲true,在js中,只有NaN,0,-0,“”,null,undefined這6個值轉化爲布爾值時,才爲false.

加new表示創建對象,不加new表示類型轉換。

var a = new Boolean(0);

if(a){  //表示判斷對象

console.log(222);

}

可以正常輸出

if(undefined){ //判斷boolean時,undefined爲false

console.log(222);

}

全局函數中,setTimeOut(),不是全局函數。decodeURI,encodeURI等都是全局函數。

readonly屬性只有在input(text/password)有效,而disabled對於所有的表單元素均有效,包括select,radio,checkbox,button等。

document.getElementById("button").setAttribute("disabled",true);

document.getElementById("button").disabled = true;
==符號判斷相等的時候 如果一個值是null,一個值是undefined,則他們相等。

如果一個值是數字,另一個值是字符串,則先將字符串轉化爲數字,然後再進行比較。

如果其中有一個值爲true,則將其轉化爲1再進行比較,如果其中有一個爲false,則轉爲0再進行比較。

如果有一個值爲對象,另一個是數字或者字符串,則將對象轉爲原始值,再進行比較。

console.log([ ]) ? true:false) 輸出爲true

console.log([] == false ? true:false) 等價爲console.log(0 == 0 ? true : false);  輸出爲true

console.log({} == false) ? true : false) 等價爲console.log((NaN == 0) ? true : false) 輸出爲false

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章