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

資訊專欄INFORMATION COLUMN

js基礎(chǔ)--數(shù)據(jù)類型檢測的相關(guān)知識

MangoGoing / 900人閱讀

摘要:話不多說,我們開干,加油干貨滿滿今天,我們一起學(xué)習(xí)一下中的數(shù)據(jù)類型檢測相關(guān)的知識,也順便做個總結(jié)?;緮?shù)據(jù)類型又包括,還有一個新增的,我們這先不說。

歡迎訪問我的個人博客:http://www.xiaolongwu.cn

前言

最近工作有點忙,好幾天都沒更新技術(shù)博客了。

周末起床打開有道云筆記,發(fā)現(xiàn)自己的博客todolist里躺了一堆只有名字的文件。

話不多說,我們開干,加油!

干貨滿滿

今天,我們一起學(xué)習(xí)一下js中的數(shù)據(jù)類型檢測相關(guān)的知識,也順便做個總結(jié)。

1、數(shù)據(jù)類型介紹

我們都知道,在js中分為基本數(shù)據(jù)類型和復(fù)雜數(shù)據(jù)類型。

基本數(shù)據(jù)類型又包括 Sting Number Boolean Null Undefined ,還有一個es6新增的Symbol,我們這先不說。

復(fù)雜數(shù)據(jù)類型只有一種,那就是Object。

我們平時見到的數(shù)組Array、正則RegExp、時間對象Date、函數(shù)Function等都屬于Object。

2、如何判斷基本數(shù)據(jù)類型

這點想必大家都知道,但是我還是要在這里啰嗦一下。

判斷基本數(shù)據(jù)類型我們可以選擇typeof來判斷。

這里需要注意就是返回值,他的返回值為小寫字母開頭的字符串。

//字符串
typeof "leon"  // "sting"

//整數(shù)
typeof 22  // "number"

//undefined
typeof undefined  // "undefined"

//Boolean
typeof true  // "boolean"

//Null
typeof null  // "object" 這為什么是object ?
// 因為null表示的是一個空指針,指針表示的是引用型數(shù)據(jù),所以返回object

//Object
typeof [1,2.3]      //"object" 
typeof {a: "ww"}    //"object" 
typeof new Date()   //"object" 

//function
typeof function(){}     //"function"
3、instanceof

instanceof是用來檢測引用類型,檢測是那種類型的實例。

他的返回值為Boolean值,真為true,否則為false。

不能檢測null,會報錯。

// 這種檢測方式一般不常用
[1, 2] instanceof Array  //true

({a: 1}) instanceof Object  //true

(function(){}) instanceof Function  //true
4、Constructor

返回結(jié)果為構(gòu)造器,也可以檢測自定義類型;

但是不適用于null和undefined。

"leon".constructor == String // true
(1234).constructor == Number // true
(true).constructor == Boolean // true
[1, 2].constructor == Array // true
({name:"leon"}).constructor == Object // true
(function(){}).constructor == Function // true

檢測自定義類型

function Leon(){}
var leon = new Leon();
leon.constructor == Leon;  // true 
5、Object.prototype.toString.call(obj)

這種方式是最權(quán)威的,也是很多框架插件中用到的方法,推薦使用;

Object.prototype.toString.call("leon"); //"[object String]"
Object.prototype.toString.call(1234);  //"[object Number]"
Object.prototype.toString.call(true); //"[object Boolean]"
Object.prototype.toString.call([1,2,3]); //"[object Array]"
Object.prototype.toString.call({name:"leon"}); //"[object Object]"
Object.prototype.toString.call(function(){}); //"[object Function]"
Object.prototype.toString.call(null); //"[object Null]"
Object.prototype.toString.call(undefined); //"[object Undefined]"

實際使用時,可以這么寫

var test = Object.prototype.toString.call("leon");
if(test == "[object String]") {
    console.log("這是個字符串")
}

//當(dāng)然我們也可以選擇用正則去判斷第二個單詞,從而得到數(shù)據(jù)的類型

github文章資源地址:js基礎(chǔ)--數(shù)據(jù)類型檢測的相關(guān)知識

我的CSDN博客地址:https://blog.csdn.net/wxl1555

如果您對我的博客內(nèi)容有疑惑或質(zhì)疑的地方,請在下方評論區(qū)留言,或郵件給我,共同學(xué)習(xí)進(jìn)步。

郵箱:[email protected]

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

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

相關(guān)文章

  • 前端開發(fā)知識點整理

    摘要:前言本文主要是有關(guān)前端方面知識按照目前的認(rèn)知進(jìn)行的收集歸類概括和整理,涵蓋前端理論與前端實踐兩方面。 前言:本文主要是有關(guān)前端方面知識按照 XX 目前的認(rèn)知進(jìn)行的收集、歸類、概括和整理,涵蓋『前端理論』與『前端實踐』兩方面。本文會告訴你前端需要了解的知識大致有什么,看上去有很多,但具體你要學(xué)什么,還是要 follow your heart & follow your BOSS。 初衷...

    Blackjun 評論0 收藏0
  • 前端開發(fā)知識點整理

    摘要:前言本文主要是有關(guān)前端方面知識按照目前的認(rèn)知進(jìn)行的收集歸類概括和整理,涵蓋前端理論與前端實踐兩方面。 前言:本文主要是有關(guān)前端方面知識按照 XX 目前的認(rèn)知進(jìn)行的收集、歸類、概括和整理,涵蓋『前端理論』與『前端實踐』兩方面。本文會告訴你前端需要了解的知識大致有什么,看上去有很多,但具體你要學(xué)什么,還是要 follow your heart & follow your BOSS。 初衷...

    Sike 評論0 收藏0
  • 前端開發(fā)知識點整理

    摘要:前言本文主要是有關(guān)前端方面知識按照目前的認(rèn)知進(jìn)行的收集歸類概括和整理,涵蓋前端理論與前端實踐兩方面。 前言:本文主要是有關(guān)前端方面知識按照 XX 目前的認(rèn)知進(jìn)行的收集、歸類、概括和整理,涵蓋『前端理論』與『前端實踐』兩方面。本文會告訴你前端需要了解的知識大致有什么,看上去有很多,但具體你要學(xué)什么,還是要 follow your heart & follow your BOSS。 初衷...

    tracy 評論0 收藏0
  • js基礎(chǔ)知識

    摘要:注意亂序遍歷對象屬性。注意因為會遍歷整個原型鏈的所有屬性值,所以效率較循環(huán)慢了很多。,不做類型轉(zhuǎn)換,類型不同的一定不等操作事件機(jī)制幾個概念事件流,事件冒泡,事件捕獲原型繼承面向?qū)ο笄岸四K化規(guī)范列表項目閉包跨域 根據(jù)百度學(xué)院的教程復(fù)習(xí)下js基礎(chǔ),在這里做一個匯總筆記 1.數(shù)據(jù)類型、判斷 最新的 ECMAScript 標(biāo)準(zhǔn)定義了 7 種數(shù)據(jù)類型: string number boole...

    浠ラ箍 評論0 收藏0
  • 基礎(chǔ) - 收藏集 - 掘金

    摘要:的語言的動態(tài)性意味著我們可以使用以上種數(shù)據(jù)類型表示變換過渡動畫實現(xiàn)案例前端掘金以下所有效果的實現(xiàn)方式均為個人見解,如有不對的地方還請一一指出。 讀 zepto 源碼之工具函數(shù) - 掘金Zepto 提供了豐富的工具函數(shù),下面來一一解讀。 源碼版本 本文閱讀的源碼為 zepto1.2.0 $.extend $.extend 方法可以用來擴(kuò)展目標(biāo)對象的屬性。目標(biāo)對象的同名屬性會被源對象的屬性...

    wuaiqiu 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<