首頁  >  文章  >  web前端  >  詳解在javaScript中偵測資料類型的幾種方式總結

詳解在javaScript中偵測資料類型的幾種方式總結

黄舟
黄舟原創
2017-03-23 14:43:401155瀏覽

在用javaScript程式設計的過程中,我們常常會遇到這樣一個問題,就是需要偵測一個資料或變數的類型,本篇文章主要介紹了在javaScript中偵測資料類型的幾種方式小結,有興趣的可以了解一下。

在用javaScript程式設計的過程中,我們常常會遇到這樣一個問題,就是需要偵測一個資料或變數的型別,那麼在javaScript中提供了哪些方法給我們呢?網路上流傳的程式碼比比皆是,但是發現其中有些是有誤的,索性我自己動手把每種方法用了一遍,今天我專門整理了下,以便以後查閱。

一、typeof  偵測

#typeof 是一個一元運算子,語法:typeof (運算數),運算數可以是任意型別。它的傳回值是一個字串,該字串說明運算數的類型。

// var arr = { name:"john"}; // object
  // var arr = ["语文","数学"]; // object
  // function Person() {};  // typeof(Person) => function
  // var arr = '我是字符串' ; // string
  // var arr = 66 ;    // number
  // var arr = true ;   // boolean
  // var arr = new Person(); // object
  // var arr = undefined;  // undefined
  // var arr = null;   // object
  // var arr = /^\d{5,20}$/; // object
  // console.log( typeof(arr) );

二、instanceof  偵測

#instanceof 偵測某個物件是不是另一個物件的實例,可以在繼承關係中用來判斷一個實例是否屬於它的父型別。

// var arr = '我是字符串' ;     // console.log( arr instanceof String ) => false
    // var arr = 66 ;         // console.log( arr instanceof Number ) =>false
    // var arr = true ;        // console.log( arr instanceof Boolean ) =>false
    // var arr = ["语文","数学"];   // console.log( arr instanceof Array ) =>true
    // var arr = { name:"john"};    // console.log( arr instanceof Object ) =>true
    // var arr = function Person(){}; //console.log(arr instanceof Function)=>true
    // var arr = undefined;      // console.log(arr instanceof Object)=>false
    // var arr = null;        // console.log(arr instanceof Object)=>false
    // var arr = /^\d{5,20}$/;    // console.log(arr instanceof RegExp)=>true

三、Object.prototype.toString.call  偵測 

使用Object.prototype上的原生toString()方法判斷資料類型,使用方法如下:Object.prototype.toString.call(value)

// var arr = '我是字符串' ;   //[object String]
    // var arr = 66 ;        //[object Number]
    // var arr = true ;       //[object Boolean]
    // var arr = ["语文","数学"];  //[object Array]
    // var arr = { name:"john"};  //[object Object]
    // var arr = function Person(){}; //[object Function]
    // var arr = undefined;      //[object Undefined]
    // var arr = null;         //[object Null]
    // var arr = /^\d{5,20}$/;     //[object RegExp]
    // console.log( Object.prototype.toString.call(arr) );

以上是詳解在javaScript中偵測資料類型的幾種方式總結的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn