1. 程式人生 > >js 判斷各種資料型別

js 判斷各種資料型別

瞭解js的都知道, 有個typeof  用來判斷各種資料型別,有兩種寫法:typeof   xxx   ,typeof(xxx)

       如下例項:

       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={

          isObj:function(o){

               return    gettype.call(o)=="[object Object]";

          },

          isArray:function(o){

               return    gettype.call(o)=="[object Array]";

          },

          isNULL:function(o){

               return    gettype.call(o)=="[object Null]";

          },

          isDocument:function(){

                return    gettype.call(o)=="[object Document]"|| [object HTMLDocument];

          }

          ........

    }

相關推薦

js 判斷各種資料型別

瞭解js的都知道, 有個typeof  用來判斷各種資料型別,有兩種寫法:typeof   xxx   ,typeof(xxx)        如下例項:        typeof   2      輸出   number        typeof   null

js判斷各種資料型別通用方法

瞭解js的都知道, 有個typeof 用來判斷各種資料型別,有兩種寫法:typeof xxx ,typeof(xxx)如下例項:typeof 2 輸出 number typeof null 輸出 object typeof {} 輸出

【java】判斷各種資料型別是否為空

一、前言       話說前幾天進行了一次程式碼走查,這次程式碼走查的問題呢,就是要檢查程式碼的漏洞,提升自己寫程式碼的效率。其中就有一個是java判斷資料型別是否為空的了。自己以前寫.Net的程式碼

JS各種變數型別在條件判斷為false的情況

   var a = undefined; ->false var a = 0; ->false var a = 0.0; ->false var a = NaN; ->false var

js判斷物件資料型別的方法

對js中不同資料的布林值型別總結:false:空字串;null;undefined;0;NaN。true:除了上面的false的情況其他都為true; javascript中有六種資料型別:string;boolean;Array;Object;null;undefin

JS判斷各種各種瀏覽器型別和版本

直接引用這個js 比如 import { Browser } from './browser.js' log(Browser.client.name+" "+Browser.client.version); //browser.js var Browser

js的本質/資料型別

js的本質就是處理資料,資料來自於後臺的資料庫 所以變數就起到了一個臨時儲存資料的作用。 ECMAScript制定了js的資料型別 資料型別 string,number,boolean,null,undefined,object是基本資料型別 基本資料型別就是簡單的賦值 function obje

11.1 js中級,資料型別資料儲存方式、作用域記憶體空間的區別以及例識別。

一. 基本資料型別和引用資料型別的區別。     1.基本資料型別:基本資料型別就是簡單的操作值。     2.引用資料型別:就是把引用的地址賦給變數。   堆記憶體:     就是存放程式碼塊的,存放形式有兩種       1)物件以鍵值對的形式存放       2)引用資料型別的賦值,是把引用

JS幾種資料型別轉換(最全)

一、轉為字串:使用 .toString或者String。 1、 .toString()方法:注意,不可以轉null和underfined //轉為字串-->toString方法 var bool=true; console.log(bool.toString()); //注意,toSt

js之基本資料型別型別轉換

基本型別資料型別轉換: 將其他資料樂行轉換為Number ,String ,Boolean型別。    1  .轉換為 Number型別      1)  轉換方式:+    Number

python中各種資料型別

數字型別 整型int   作用:年紀,等級,身份證號,qq號等與整型數字有關   定義:   age=10 #本質age=int(10) 浮點型float   作用:薪資,身高,體重等與浮點數相關 salary=3.1#本質salary=float(3.1) 該型別總結

js入門 關於js屬性及其資料型別(詳解)

1. js的本質就是處理資料。資料來自於後臺的資料庫。 所以變數就起到一個臨時儲存資料的作用。 ECMAScript制定了js的資料型別。 資料型別有哪些? 1. 字串   String 2. 數字    Number

JS有哪些資料型別

這裡是修真院前端小課堂,每篇分享文從 【背景介紹】【知識剖析】【常見問題】【解決方案】【編碼實戰】【擴充套件思考】【更多討論】【參考文獻】 八個方面深度解析前端知識/技能,本篇分享的是: 【JS有哪些資料型別?】   大家好,我是IT修真院武漢分院web第17期的學

js中檢測資料型別的幾種方式

1、typeof 一元運算子,用來檢測資料型別。只可以檢測number,string,boolean,object,function,undefined。 對於基本資料型別是沒有問題的,但是遇到引用資料型別是不起作用的(無法細分物件)

JS判斷當前裝置型別

CSS3出來後,我們一般都是通過@media媒體查詢來實現網頁自適應,但是有時候,還是需要我們根據不同的裝置來對應的做不同的顯示,這時候,我們需要知道當前使用者訪問我們的介面用的是什麼裝置,怎麼獲取呢? var os = function (){   var ua = navigator.userAgen

Python基礎學習篇-7-各種資料型別總結(一)

Python3 中有六個標準的資料型別: Number(數字) String(字串) List(列表) Tuple(元組) Set(集合) Dictionary(字典) 其中: 不可變資料(3 個):Number(數字

js中獲取資料型別

ES5中,js中資料型別:number、string、boolean、undefined、null、object js中獲取資料型別常用的四種方式 例項: var a = 123, b = true, c = "123", d = undefined, e = nu

JS有哪些資料型別和常用方法?

這裡是修真院前端小課堂,每篇分享文從 【背景介紹】【知識剖析】【常見問題】【解決方案】【編碼實戰】【擴充套件思考】【更多討論】【參考文獻】 八個方面深度解析前端知識/技能,本篇分享的是: 【JS有哪些資料型別和常用方法?    】 一.背景介紹  

如何判斷int資料型別為空

法一: 在不改變資料庫結構的前提下(假設你的資料是從資料庫讀取,而不是自己在程式碼中定義)。那麼可以通過折中的方法來判斷: 1 先通過 String.valueOf(int型別資料) 轉換成String型別; 2 使用if(){ } 判斷“null” || "0" 是否匹配你要判斷的i

js的常見資料型別

JavaScript常見的資料型別有哪些?如何準確檢測資料型別?常見的引用型別有哪些? js有六種資料型別,包括五種基本型別(Number,String,Boolean,Undefined,Null)和一種複雜的資料型別(Object); js有三大引用型別,Object型別,Array型別