成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

淺析Js中數(shù)據(jù)類型判斷的方法

Worktile / 1150人閱讀

摘要:語(yǔ)法參數(shù)要檢測(cè)的對(duì)象某個(gè)構(gòu)造函數(shù)通過(guò)這個(gè)運(yùn)算符我們就可以用來(lái)檢測(cè)真正的數(shù)據(jù)類型但是如果是的話,好像就沒(méi)辦法解決了呢。

1.typeof操作符返回一個(gè)字符串,指示未經(jīng)計(jì)算的操作數(shù)的類型。

語(yǔ)法:type opreand
參數(shù): opreand是一個(gè)表達(dá)式,表示對(duì)象或者原始值,其類型將被返回。
描述:
    類型                         結(jié)果
    Undefined                    "undefined"
    Null                         "object"
    Boolean                      "boolean"
    Number                       "number"
    String                       "string"
    Symbol(ECMAScript 6 新增)    "symbol"
    函數(shù)對(duì)象                      "function"
    任何其他對(duì)象                  "object"

2.typeof 對(duì)于一些特殊數(shù)據(jù)時(shí)的表現(xiàn)

typeof (new Number(1));          //結(jié)果并不是想象中的"number"而是"object"
typeof (new String("hello"));     //同理結(jié)果仍然是"object"
tyoeof (new Boolean(true));       //返回"object"

typeof null;                      //返回也為"object"

3.instanceof 運(yùn)算符用來(lái)測(cè)試一個(gè)對(duì)象在其原型鏈中是否存在一個(gè)構(gòu)造函數(shù)的 prototype 屬性。

語(yǔ)法:object instanceof constructor
參數(shù):object 要檢測(cè)的對(duì)象   constructor   某個(gè)構(gòu)造函數(shù)
通過(guò)這個(gè)運(yùn)算符我們就可以用來(lái)檢測(cè)object真正的數(shù)據(jù)類型
    (new Number(1));       instanceof Number    //true
    (new Array("2,3"));    instanceof Array     //true
    (new String("hello")); instanceof String    //true
但是如果是null的話,好像就沒(méi)辦法解決了呢。我們可以提前使用對(duì)象的toString方法判斷是否為null

4.更好的做法是借用Object.prototype.toString

Object.prototype.toString.call(1);              // "[object Number]"
Object.prototype.toString.call(new Number(1));  // "[object Number]"
Object.prototype.toString.call("hello");        // "[object String]"

Object.prototype.toString.call(function(){});   // "[object function]"
Object.prototype.toString.call(null);           // "[object Null]"

所以我們可以封裝一個(gè)利用Object.prototype.toString來(lái)判斷數(shù)據(jù)類型的函數(shù)。

  function classOf(obj) {
      return Object.prototype.toString.call(obj).slice(8, -1);
  };
  classOf(null); //"Null"
   

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/83394.html

相關(guān)文章

  • 淺析js工廠函數(shù)、構(gòu)造函數(shù)

    摘要:首先,說(shuō)下工廠函數(shù)。應(yīng)對(duì)某些場(chǎng)景,工廠函數(shù)并不能滿足我們,如我需要判斷樹是不是動(dòng)物類型你會(huì)發(fā)現(xiàn)你并沒(méi)辦法。這時(shí)候構(gòu)造函數(shù)就出現(xiàn)了我的性別是猴子母猴子我的性別是母跟工廠函數(shù)很像,只是沒(méi)有了創(chuàng)建對(duì)象和,并且都用添加屬性。 首先,說(shuō)下工廠函數(shù)。顧名思義,就好比一個(gè)工廠一樣,可以批量制造某種類型的東西。其實(shí)說(shuō)白了就是封裝了個(gè)方法減少重復(fù)工作,相信稍微有點(diǎn)碼齡的人都懂。上代碼: function...

    _DangJin 評(píng)論0 收藏0
  • 淺析Vue響應(yīng)式原理(二)

    摘要:響應(yīng)式原理之之前簡(jiǎn)單介紹了和類的代碼和作用,現(xiàn)在來(lái)介紹一下類和。對(duì)于數(shù)組,響應(yīng)式的實(shí)現(xiàn)稍有不同。不存在時(shí),說(shuō)明不是響應(yīng)式數(shù)據(jù),直接更新。如果對(duì)象是響應(yīng)式的,確保刪除能觸發(fā)更新視圖。 Vue響應(yīng)式原理之Observer 之前簡(jiǎn)單介紹了Dep和Watcher類的代碼和作用,現(xiàn)在來(lái)介紹一下Observer類和set/get。在Vue實(shí)例后再添加響應(yīng)式數(shù)據(jù)時(shí)需要借助Vue.set/vm.$se...

    rockswang 評(píng)論0 收藏0
  • Vue.nextTick淺析

    摘要:淺析的特點(diǎn)之一就是響應(yīng)式,但數(shù)據(jù)更新時(shí),并不會(huì)立即更新。盡管已經(jīng)更新,但新增的元素并不立即插入到中。實(shí)際在中,執(zhí)行了,這也是自動(dòng)綁定到執(zhí)行上下文的原因。在內(nèi),使用數(shù)組保存回調(diào)函數(shù),表示當(dāng)前狀態(tài),使用函數(shù)來(lái)執(zhí)行回調(diào)隊(duì)列。 Vue.nextTick 淺析 Vue 的特點(diǎn)之一就是響應(yīng)式,但數(shù)據(jù)更新時(shí),DOM 并不會(huì)立即更新。當(dāng)我們有一個(gè)業(yè)務(wù)場(chǎng)景,需要在 DOM 更新之后再執(zhí)行一段代碼時(shí),可以...

    MartinDai 評(píng)論0 收藏0
  • 淺析Object.prototype.toString()

    摘要:一直很奇怪為什么可以通過(guò)判斷各數(shù)據(jù)的類型,帶著這個(gè)疑問(wèn),查看了一些資料。與是兩個(gè)不同的方法,他們返回的值是不一樣的。需要調(diào)用原型對(duì)象上的去判斷類型 一直很奇怪為什么可以通過(guò)Object.prototype.toString()判斷各數(shù)據(jù)的類型,帶著這個(gè)疑問(wèn),查看了一些資料。 1.Object.prototype.toString()判斷原理 那么當(dāng)我們調(diào)用這個(gè)方法時(shí),具體會(huì)做那些操作呢...

    honhon 評(píng)論0 收藏0
  • 淺析前端上傳

    摘要:項(xiàng)目上也用到很多上傳文件的地方,七牛云,阿里云,訊飛上傳都接觸過(guò),所以在這里做一個(gè)記錄,總結(jié)一下前端上傳的幾種方式。類型的文件名七牛云上傳淺析是一個(gè)基于七牛開發(fā)的前端。 showImg(https://segmentfault.com/img/bVbvibu?w=1920&h=1080); 圖片,音頻,視頻等等這幾種常見的資源類型,如果需要從前端上傳到服務(wù)端,有幾種方式呢?不妨回顧一下...

    terro 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<