1.typeof
形如 var x = "xx"; typeof x == 'string' typeof(x)
返回型別有:'undefined' 「string」 'number' 'boolean' 'function' 'object'
缺點:對於object型別不能細分是什麼型別
優點:對空null的判斷 'undefined'的應用
2.instanceof
形如 var d = new string('test'); d instanceof string ==true
返回的型別有:string number boolean function object array date
優點:能區分出更細的型別如 date array 如 var num = 3; num instanceof number 能返回具體的型別
缺點:直變數不能區分 必須採用new 的物件
3.constructor
形如:var x = ; x.constructor==array
優點:可以返回繼承的型別
缺點: 不能物件的細分,如繼承 必須手動修正
4.object.prototype.tostring.call();
優點:通用,返回"[objectstring]" 具體object的型別
缺點:不能返回繼承的型別
判斷 JS 中物件的型別
1.typeof 形如 var x xx typeof x string typeof x 返回型別有 undefined string number boolean function object 缺點 對於object型別不能細分是什麼型別 優點 對空null的判斷 undefined 的應用 ...
js中判斷物件具體型別
大家可能知道js中判斷物件型別可以用typeof來判斷。看下面的情況 從上面中我們可以看出陣列和普通物件用typeof判斷出來都是object,但是現在我們有這個需求,我們要明確判斷出這個物件是具體的哪個物件 比如陣列物件,日期物件,正規表示式物件,其他自定義物件,dom物件等等 那怎麼辦呢。其實j...
JS中精確判斷物件的型別
var a 1,2,3,4,5 var b function var c console.log typeof a,typeof b,typeof c 在tostring方法被呼叫時,會執行下面的操作步驟 1.獲取this物件的 class 屬性的值。2.計算出三個字串 object 第一步的操作結...