淺談JavaScript中typeof與instanceof的區別

  首先,咱們從其常規定義入手:json

      instanceof 運算符能夠用來判斷某個構造函數的 prototype 屬性是否存在另一個要檢測對象的原型鏈上。(須要注意的一點是:prototype(原型鏈)的屬性值有可能會改變)。函數

    typeof操做符返回一個字符串,表示未經求值的操做數(unevaluated operand)的類型。lua

此處引入topeof的一些特別之處,以便在區分用instanceof 仍是typeof是作出判斷:prototype

image

注意:在經過typeof處理」其餘任何對象」+ 「Null」類型時的結果是object類型,故在實際生產過程當中,特別是作一個json數據的判斷中,必定要記住避免使用typeof或者說慎用吧。  這也是筆者今天作此文的目的所在。code

相關文章
相關標籤/搜索