了解js的都知道, 有個typeof 用來判斷各種資料型別,有兩種寫法:typeof *** ,typeof(***)
如下例項:
typeof 2 輸出 number
typeof null 輸出 object
typeof {} 輸出 object
typeof 輸出 object
typeof (function(){}) 輸出 function
typeof undefined 輸出 undefined
typeof '222' 輸出 string
typeof true 輸出 boolean
這裡面包含了js裡面的五種資料型別 number string
boolean undefined
object和函式型別 function
看到這裡你肯定會問了:我怎麼去區分物件,陣列和null呢?
接下來我們就用到另外乙個利器:object.prototype.tostring.call
這是物件的乙個原生原型擴充套件函式,用來更精確的區分資料型別。
我們來試試這個玩兒意兒:
var gettype=object.prototype.tostring
gettype.call('aaaa') 輸出
[object string]
gettype.call(2222) 輸出
[object number]
gettype.call(true) 輸出 [object boolean]
gettype.call(undefined) 輸出
[object undefined]
gettype.call(null) 輸出
[object null]
gettype.call({}) 輸出
[object object]
gettype.call() 輸出
[object array]
gettype.call(function(){}) 輸出
[object function]
看到這裡,剛才的問題我們解決了。
其實js 裡面還有好多型別判斷 [object htmldivelement] div 物件 , [object htmlbodyelement] body 物件 ,[object document](ie)或者 [object htmldocument](firefox,google) ......各種dom節點的判斷,這些東西在我們寫外掛程式的時候都會用到。
可以封裝的方法如下 :
var gettype=object.prototype.tostring
var utility=,
isarray:function(o),
isnull:function(o),
isdocument:function()
........ }
js 判斷各種資料型別
了解js的都知道,有個typeof 用來判斷各種資料型別,有兩種寫法 typeof typeof 如下例項 typeof 2 number typeof null object typeof undefined undefined typeof 222 string typeof true bool...
JS 判斷各種資料型別
了解js的都知道,有個typeof 用來判斷各種資料型別,有兩種寫法 typeof typeof 如下例項 typeof 2 輸出 number typeof null 輸出 object typeof 輸出 object typeof 輸出 object typeof function 輸出 fu...
js 判斷各種資料型別
了解js的都知道,有個typeof 用來判斷各種資料型別,有兩種寫法 typeof typeof 如下例項 typeof 2 輸出 number typeof null 輸出 object typeof 輸出 object typeof 輸出 object typeof function 輸出 fu...