typeof 返回乙個表示資料型別的字串,返回結果包括:number、boolean、string、object、undefined、function、symbol等7種資料型別。
舉個栗子:
typeof
null
;// object
typeof undefined;
// undefined
typeof1;
// number
typeof
'1';
// string
typeof
;// object
typeof
true
;// boolean
typeof
function()
;// function
typeof
symbol()
;// symbol
有栗子可見,typeof對於基本型別的判斷相對比較準確(null除外),對於引用型別的無能為力。下面介紹一種能判斷引用型別的方法。
instanceof 是用來判斷 a 是否為 b 的例項對,表示式為:a instanceof b,如果a是b的例項,則返回true,否則返回false。
舉個栗子
[
]instanceof
array
;// true
function()
instanceof
function
;// true
instanceof
object
;// true
雖然instanceof可以判斷引用型別,但是對於基本型別又無能為力了,有沒有一種方式既能判斷基本型別又能判斷引用型別呢,請看第三種方法。
舉個栗子
object.prototype.tostring.
call
(null);
// [object null]
object.prototype.tostring.
call
(undefined)
;// [object undefined]
object.prototype.tostring.
call(1
);// [object number]
object.prototype.tostring.
call
('1');
// [object string]
object.prototype.tostring.
call([
]);// [object array]
object.prototype.tostring.
call
(true);
// [object boolean]
object.prototype.tostring.
call
(function()
);// [object function]
object.prototype.tostring.
call()
;// [object object]
到這裡,我們已經可以對資料型別有了準確的判斷,至於這些方法的原理是什麼,請看後面的文章003-instanceof原理。 js判斷資料型別
1 typeof 形如 var x xx typeof x string 返回型別有 undefined string number boolean function object 缺點 對於object型別不能細分是什麼型別 優點 對空null的判斷 undefined 的應用 2 instanc...
js判斷資料型別
了解js的都知道,有個typeof 用來判斷各種資料型別,有兩種寫法 typeof typeof 如下例項 typeof 2 輸出 number typeof null 輸出 object typeof 輸出 object typeof 輸出 object typeof function 輸出 fu...
js判斷資料型別
1 判斷是否為陣列型別 2 判斷是否為字串型別 3 判斷是否為數值型別 isnan 變數 如果為true就是數字型別 注意這個函式一般針對數字型別來判斷是否值為nan,若變數為非數字型別,則先轉化為數字型別再做判斷,用此函式時,別忘考慮空串和空格 這倆轉化為數字是0 4 判斷是否為日期型別 5 判斷...