成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

javascript的typeof可返回了什么數(shù)據(jù)類型

這篇文章主要介紹了javascript的typeof可返回了什么數(shù)據(jù)類型,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

目前成都創(chuàng)新互聯(lián)公司已為上1000+的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬主機網(wǎng)站運營、企業(yè)網(wǎng)站設(shè)計、柞水網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

在javascript中,typeof操作符可返回的數(shù)據(jù)類型有:“undefined”、“object”、“boolean”、“number”、“string”、“symbol”、“function”等。

本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。

使用 typeof 操作符可以返回變量的數(shù)據(jù)類型。

我們來看看各個數(shù)據(jù)類型對應(yīng)typeof的值:

數(shù)據(jù)類型結(jié)果
Undefined“undefined”
Null“object”
布爾值“boolean”
數(shù)值“number”
字符串“string”
Symbol (ECMAScript 6 新增)“symbol”
宿主對象(JS環(huán)境提供的,比如瀏覽器)Implementation-dependent
函數(shù)對象“function”
任何其他對象“object”

再看看具體的實例:

// Numbers
typeof 37 === 'number';
typeof 3.14 === 'number';
typeof Math.LN2 === 'number';
typeof Infinity === 'number';
typeof NaN === 'number'; // 盡管NaN是"Not-A-Number"的縮寫,意思是"不是一個數(shù)字"
typeof Number(1) === 'number'; // 不要這樣使用!

// Strings
typeof "" === 'string';
typeof "bla" === 'string';
typeof (typeof 1) === 'string'; // typeof返回的肯定是一個字符串
typeof String("abc") === 'string'; // 不要這樣使用!

// Booleans
typeof true === 'boolean';
typeof false === 'boolean';
typeof Boolean(true) === 'boolean'; // 不要這樣使用!

// Symbols
typeof Symbol() === 'symbol';
typeof Symbol('foo') === 'symbol';
typeof Symbol.iterator === 'symbol';

// Undefined
typeof undefined === 'undefined';
typeof blabla === 'undefined'; // 一個未定義的變量,或者一個定義了卻未賦初值的變量

// Objects
typeof {a:1} === 'object';

// 使用Array.isArray或者Object.prototype.toString.call方法可以從基本的對象中區(qū)分出數(shù)組類型
typeof [1, 2, 4] === 'object';

typeof new Date() === 'object';

// 下面的容易令人迷惑,不要這樣使用!
typeof new Boolean(true) === 'object';
typeof new Number(1) ==== 'object';
typeof new String("abc") === 'object';

// 函數(shù)
typeof function(){} === 'function';
typeof Math.sin === 'function';

我們會發(fā)現(xiàn)一個問題,就是typeof來判斷數(shù)據(jù)類型其實并不準(zhǔn)確。比如數(shù)組、正則、日期、對象的typeof返回值都是object,這就會造成一些誤差。

所以在typeof判斷類型的基礎(chǔ)上,我們還需要利用Object.prototype.toString方法來進一步判斷數(shù)據(jù)類型。

我們來看看在相同數(shù)據(jù)類型的情況下,toString方法和typeof方法返回值的區(qū)別:

數(shù)據(jù)toStringtypeof
“foo”Stringstring
new String(“foo”)Stringobject
new Number(1.2)Numberobject
trueBooleanboolean
new Boolean(true)Booleanobject
new Date()Dateobject
new Error()Errorobject
new Array(1, 2, 3)Arrayobject
/abc/gRegExpobject
new RegExp(“meow”)RegExpobject

可以看到利用toString方法可以正確區(qū)分出Array、Error、RegExp、Date等類型。

所以我們一般通過該方法來進行數(shù)據(jù)類型的驗證。

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“javascript的typeof可返回了什么數(shù)據(jù)類型”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!

文章標(biāo)題:javascript的typeof可返回了什么數(shù)據(jù)類型
鏈接分享:http://jinyejixie.com/article36/psgcsg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、虛擬主機、服務(wù)器托管、關(guān)鍵詞優(yōu)化、網(wǎng)站營銷、網(wǎng)站設(shè)計公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計
读书| 牙克石市| 和静县| 安庆市| 信宜市| 湖口县| 永春县| 永春县| 威宁| 荣成市| 五大连池市| 东源县| 东源县| 门源| 林州市| 莎车县| 康保县| 兴城市| 高要市| 武隆县| 松原市| 龙游县| 十堰市| 旬邑县| 孟连| 肃南| 长白| 巴林右旗| 寻乌县| 图们市| 盐池县| 陇川县| 连平县| 亳州市| 泽州县| 伊宁市| 民权县| 通河县| 子洲县| 永安市| 恭城|