typeof用在基本數(shù)據(jù)類型和函數(shù)時(shí),返回其對應(yīng)類型的描述,對于引用類型都返回為object.
instanceof無法判斷基本數(shù)據(jù)類型,對于引用類型數(shù)據(jù),返回其其對應(yīng)類型。
Object.prototype.toString無論基本數(shù)據(jù)類型還是引用類型返回其對應(yīng)類型。
對應(yīng)測試結(jié)果如下:
typeof test | instanceof | Object.prototype.toString.call(test) | |
var test = "xuriliang"; | string | test instanceof String //false | [object String] |
var test = 27; | number | test instanceof Number //false | [object Number] |
var test = true; | boolean | test instanceof Boolean //false | [object Boolean] |
var test = [1,2,3]; | object | test instanceof Array //true | [object Array] |
test instanceof Object //true | |||
var test = null; | object | test instanceof Object //false | [object Null] |
var test = undefined; | undefined | test instanceof Object //false | [object Undefined] |
var test = new String("xuriliang") | object | test instanceof String //true | [object String] |
test instanceof Object //true | |||
var test = new Number(27) | object | test instanceof Number //true | [object Number] |
test instanceof Object //true | |||
var test = new Boolean(true) | object | test instanceof Boolean //true | [object Boolean] |
test instanceof Object //true | |||
var test = new Array(1,2,3) | object | test instanceof Array //true | [object Array] |
test instanceof Object //true | |||
var test = function(){} | function | test instanceof Function //true | [object Function] |
test instanceof Object //true | |||
var test = /d/ | object | test instanceof RegExp //true | [object RegExp] |
test instanceof Object //true |
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/102213.html
摘要:本文章主要總結(jié)一下數(shù)據(jù)類型的識別判斷方法最后封裝一個(gè)函數(shù),可以判別所有的類型數(shù)據(jù)類型基本類型類型該類型只有一個(gè)值,即小寫,在使用聲明變量但是未對其加以初始化時(shí),這個(gè)變量的值就是。 *本文章主要總結(jié)一下js數(shù)據(jù)類型的識別判斷方法tyoeofinstanceofObject.prototype.toString.callconstructor最后封裝一個(gè)函數(shù),可以判別所有的類型* 1.數(shù)據(jù)...
摘要:如果網(wǎng)頁中包含多個(gè)框架,那實(shí)際上就存在兩個(gè)以上不同的全局執(zhí)行環(huán)境,從而存在兩個(gè)以上不同版本的構(gòu)造函數(shù)。如果你從一個(gè)框架向另一個(gè)框架傳入一個(gè)數(shù)組,那么傳入的數(shù)組與在第二個(gè)框架中原生創(chuàng)建的數(shù)組分別具有各自不同的構(gòu)造函數(shù)。 1. 首先,typeof肯定是不行的 對于一些基本類型,typeof是可以判斷出數(shù)據(jù)類型,但是判斷一些引用類型時(shí)候,不能具體到具體哪一種類型 再來復(fù)習(xí)一下typeof的...
摘要:復(fù)雜類型復(fù)雜類型從字面量是直接生成構(gòu)造函數(shù)的,所以不會像基本類型一樣兩種情況。 JS(ES6)中的基本數(shù)據(jù)類型:1.數(shù)值型(Number):包括整數(shù)、浮點(diǎn)數(shù)、2.布爾型(Boolean)、3.字符串型(String)、4.數(shù)組(Array)、5.空值(Null) 、6.未定義(Undefined),基本數(shù)據(jù)類型是按值訪問的,因?yàn)榭梢灾苯硬僮鞅4嬖谧兞恐械膶?shí)際值。引用類型:Object ...
摘要:話不多說,我們開干,加油干貨滿滿今天,我們一起學(xué)習(xí)一下中的數(shù)據(jù)類型檢測相關(guān)的知識,也順便做個(gè)總結(jié)?;緮?shù)據(jù)類型又包括,還有一個(gè)新增的,我們這先不說。 歡迎訪問我的個(gè)人博客:http://www.xiaolongwu.cn 前言 最近工作有點(diǎn)忙,好幾天都沒更新技術(shù)博客了。 周末起床打開有道云筆記,發(fā)現(xiàn)自己的博客todolist里躺了一堆只有名字的文件。 話不多說,我們開干,加油! 干貨滿...
摘要:如果項(xiàng)目中需要頻繁的進(jìn)行數(shù)據(jù)類型的判斷與獲取可以考慮進(jìn)行封裝,簡單的處理與已足夠。 前言 在js中數(shù)據(jù)我們經(jīng)常需要判斷或者獲取數(shù)據(jù)類型,大部分時(shí)候我們都是通過type加instanceof來組合判斷數(shù)據(jù)類型來實(shí)現(xiàn),大部分代碼中對于數(shù)據(jù)類型的獲取處理都比較丑陋,前段時(shí)間看了一下Q的源代碼中對數(shù)據(jù)類型的判斷與獲取處理,看起來相當(dāng)簡潔也比較好用,這篇文章來進(jìn)行一下發(fā)散。 typeof 在js...
閱讀 3479·2021-09-08 10:46
閱讀 1189·2019-08-30 13:17
閱讀 2369·2019-08-30 13:05
閱讀 1212·2019-08-29 15:29
閱讀 2889·2019-08-29 11:31
閱讀 543·2019-08-26 12:13
閱讀 1537·2019-08-26 11:42
閱讀 1846·2019-08-23 18:37