在javascript中,判斷一個變量的類型可以用typeof
(1) 數字類型、typeof返回的值是number。比如說:typeof(1),返回值是number
(2) 字符串類型,typeof返回的值是string。比如typeof(“123”返回值時string)
(3) 布爾類型,typeof返回的值是boolean。比如typeof(true)返回值時boolean
(4) 對象、數組、null返回的值是object。比如typeof(window),typeof(document),typeof(null)返回的值都是object
(5) 函數類型,返回的值是function。比如:typeof(eval),typeof(Date)返回的值都是function。
(6) 不存在的變量、函數或者undefined,將返回undefined。比如:typeof(abc)、typeof(undefined)都返回undefined
在javascript中,instanceof用於判斷某個對象是否被另一個函數構造。
使用typeof運算符時采用引用類型存儲值會出現一個問題,無論引用的是什么類型的對象,它都返回”object”。ECMAScript引入了另一個Java運算符instanceof來解決這個問題。Instanceof運算符與typeof運算符相似,用於識別正在處理的對象的類型。與typeof方法不同的是,instanceof方法要求開發者明確地確認對象為某特定類型