做爰高潮a片〈毛片〉,尤物av天堂一区二区在线观看,一本久久A久久精品VR综合,添女人荫蒂全部过程av

最新文章專(zhuān)題視頻專(zhuān)題問(wèn)答1問(wèn)答10問(wèn)答100問(wèn)答1000問(wèn)答2000關(guān)鍵字專(zhuān)題1關(guān)鍵字專(zhuān)題50關(guān)鍵字專(zhuān)題500關(guān)鍵字專(zhuān)題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專(zhuān)題關(guān)鍵字專(zhuān)題tag2tag3文章專(zhuān)題文章專(zhuān)題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專(zhuān)題3
問(wèn)答文章1 問(wèn)答文章501 問(wèn)答文章1001 問(wèn)答文章1501 問(wèn)答文章2001 問(wèn)答文章2501 問(wèn)答文章3001 問(wèn)答文章3501 問(wèn)答文章4001 問(wèn)答文章4501 問(wèn)答文章5001 問(wèn)答文章5501 問(wèn)答文章6001 問(wèn)答文章6501 問(wèn)答文章7001 問(wèn)答文章7501 問(wèn)答文章8001 問(wèn)答文章8501 問(wèn)答文章9001 問(wèn)答文章9501
當(dāng)前位置: 首頁(yè) - 科技 - 知識(shí)百科 - 正文

談?wù)勎覍?duì)JavaScript中typeof和instanceof的深入理解_javascript技巧

來(lái)源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 21:47:52
文檔

談?wù)勎覍?duì)JavaScript中typeof和instanceof的深入理解_javascript技巧

談?wù)勎覍?duì)JavaScript中typeof和instanceof的深入理解_javascript技巧:這次主要說(shuō)說(shuō)javascript的類(lèi)型判斷函數(shù)typeof和判斷構(gòu)造函數(shù)原型instanceof的用法和注意的地方。 typeof 先來(lái)說(shuō)說(shuō)typeof吧。首先需要注意的是,typeof方法返回一個(gè)字符串,來(lái)表示數(shù)據(jù)的類(lèi)型。 typeof 是一個(gè)一元運(yùn)算,放在一個(gè)運(yùn)算數(shù)之前,運(yùn)算數(shù)可以是任意
推薦度:
導(dǎo)讀談?wù)勎覍?duì)JavaScript中typeof和instanceof的深入理解_javascript技巧:這次主要說(shuō)說(shuō)javascript的類(lèi)型判斷函數(shù)typeof和判斷構(gòu)造函數(shù)原型instanceof的用法和注意的地方。 typeof 先來(lái)說(shuō)說(shuō)typeof吧。首先需要注意的是,typeof方法返回一個(gè)字符串,來(lái)表示數(shù)據(jù)的類(lèi)型。 typeof 是一個(gè)一元運(yùn)算,放在一個(gè)運(yùn)算數(shù)之前,運(yùn)算數(shù)可以是任意
這次主要說(shuō)說(shuō)javascript的類(lèi)型判斷函數(shù)typeof和判斷構(gòu)造函數(shù)原型instanceof的用法和注意的地方。

typeof

先來(lái)說(shuō)說(shuō)typeof吧。首先需要注意的是,typeof方法返回一個(gè)字符串,來(lái)表示數(shù)據(jù)的類(lèi)型。

typeof 是一個(gè)一元運(yùn)算,放在一個(gè)運(yùn)算數(shù)之前,運(yùn)算數(shù)可以是任意類(lèi)型。

它返回值是一個(gè)字符串,該字符串說(shuō)明運(yùn)算數(shù)的類(lèi)型。typeof 一般只能返回如下幾個(gè)結(jié)果:
number,boolean,string,function,object,undefined。我們可以使用 typeof 來(lái)獲取一個(gè)變量是否存在,如 if(typeof a!="undefined"){alert("ok")},而不要去使用 if(a) 因?yàn)槿绻?a 不存在(未聲明)則會(huì)出錯(cuò),對(duì)于 Array,Null 等特殊對(duì)象使用 typeof 一律返回 object,這正是 typeof 的局限性。

語(yǔ)法講解

我們先看看各個(gè)數(shù)據(jù)類(lèi)型對(duì)應(yīng)typeof的值:

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

再看看具體的實(shí)例:

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

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

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

數(shù)據(jù) toString typeof
“foo” String string
new String(“foo”) String object
new Number(1.2) Number object
true Boolean boolean
new Boolean(true) Boolean object
new Date() Date object
new Error() Error object
new Array(1, 2, 3) Array object
/abc/g RegExp object
new RegExp(“meow”) RegExp object

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

所以我們一般通過(guò)該方法來(lái)進(jìn)行數(shù)據(jù)類(lèi)型的驗(yàn)證

真題檢測(cè)

但是既然今天說(shuō)到了typeof,那這里就列出幾道題目,來(lái)看看自己是否真正掌握了typeof的用法。

第一題:

第二題:

第三題:

第四題:

第五題:

第六題:

第七題:

下面公布答案了,這七題的答案分別是:

"undefined","number","undefined","undefined","number","1undefined","undefined"

做對(duì)了幾道呢?是不是很大的困惑呢?這幾題雖然都有typeof,但是考察了很多javascript的基礎(chǔ)噢。下面我們來(lái)一一詳解。

第一題:

表達(dá)式是從右往左的,x由于變量提升,類(lèi)型不是null,而是undefined,所以x=y=”undefined”。

變量提升我在這篇文章中提到過(guò),可以看看。

第二題:

傳入的參數(shù)為f也就是function(){ return 1; }這個(gè)函數(shù)。通過(guò)f()執(zhí)行后,得到結(jié)果1,所以typeof 1返回”number”。這道題很簡(jiǎn)單,主要是區(qū)分f和f()。

第三題:

這一題考察的是this的指向。this永遠(yuǎn)指向函數(shù)執(zhí)行時(shí)的上下文,而不是定義時(shí)的(ES6的箭頭函數(shù)不算)。當(dāng)arguments執(zhí)行時(shí),this已經(jīng)指向了window對(duì)象。所以是”undefined”。對(duì)this執(zhí)行不熟悉的同學(xué)可以看看這篇文章:深入理解this,對(duì)剛剛提到的箭頭函數(shù)感興趣的同學(xué)可以看看初步探究ES6之箭頭函數(shù)。

第四題:

如果上面那一題做對(duì)了,那么這一題也應(yīng)該不會(huì)錯(cuò),同樣是this的指向問(wèn)題。

第五題:

這一題比較容易錯(cuò),因?yàn)槲以谟龅竭@道題之前也從來(lái)沒(méi)有遇到過(guò)javascript的分組選擇符。什么叫做分組選擇符呢?舉一個(gè)例子就會(huì)明白了:

所以上面的題目會(huì)返回2,typeof 2當(dāng)然是”number”啦。

第六題:

這是一個(gè)javascript語(yǔ)言規(guī)范上的問(wèn)題,在條件判斷中加入函數(shù)聲明。這個(gè)聲明語(yǔ)句本身沒(méi)有錯(cuò),也會(huì)返回true,但是javascript引擎在搜索的時(shí)候卻找不到該函數(shù)。所以結(jié)果為”1undefined”。

第七題:

這題其實(shí)是一個(gè)考察心細(xì)程度的題目。形參的foo指向的是{ foo: { bar: 1 } }這個(gè)整體。相信這么說(shuō)就明白了。

好啦。上面的題目都是很好的資源噢。

instanceof

接下來(lái)該說(shuō)說(shuō)instanceof方法了。instanceof運(yùn)算符可以用來(lái)判斷某個(gè)構(gòu)造函數(shù)的prototype屬性是否存在于另外一個(gè)要檢測(cè)對(duì)象的原型鏈上。

instanceof 用于判斷一個(gè)變量是否某個(gè)對(duì)象的實(shí)例,如 var a=new Array();alert(a instanceof Array); 會(huì)返回 true,同時(shí) alert(a instanceof Object) 也會(huì)返回 true;這是因?yàn)?Array 是 object 的子類(lèi)。再如:function test(){};var a=new test();alert(a instanceof test) 會(huì)返回

談到 instanceof 我們要多插入一個(gè)問(wèn)題,就是 function 的 arguments,我們大家也許都認(rèn)為 arguments 是一個(gè) Array,但如果使用 instaceof 去測(cè)試會(huì)發(fā)現(xiàn) arguments 不是一個(gè) Array 對(duì)象,盡管看起來(lái)很像。

如果對(duì)原型不太了解,可以看看深入理解原型。

下面我們看看instanceof的實(shí)例:

但是這里我們需要注意一個(gè)問(wèn)題:

第一個(gè)為什么返回false呢?因?yàn)闃?gòu)造函數(shù)的原型被覆蓋了,我們可以看看new f和new g的區(qū)別:

聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

談?wù)勎覍?duì)JavaScript中typeof和instanceof的深入理解_javascript技巧

談?wù)勎覍?duì)JavaScript中typeof和instanceof的深入理解_javascript技巧:這次主要說(shuō)說(shuō)javascript的類(lèi)型判斷函數(shù)typeof和判斷構(gòu)造函數(shù)原型instanceof的用法和注意的地方。 typeof 先來(lái)說(shuō)說(shuō)typeof吧。首先需要注意的是,typeof方法返回一個(gè)字符串,來(lái)表示數(shù)據(jù)的類(lèi)型。 typeof 是一個(gè)一元運(yùn)算,放在一個(gè)運(yùn)算數(shù)之前,運(yùn)算數(shù)可以是任意
推薦度:
標(biāo)簽: javascript of typeof
  • 熱門(mén)焦點(diǎn)

最新推薦

猜你喜歡

熱門(mén)推薦

專(zhuān)題
Top
主站蜘蛛池模板: 临漳县| 民勤县| 二连浩特市| 河西区| 商河县| 宜川县| 屏东县| 南投县| 河间市| 高碑店市| 浑源县| 迁西县| 格尔木市| 锦州市| 汉沽区| 福泉市| 壤塘县| 梁平县| 郸城县| 双辽市| 锡林郭勒盟| 基隆市| 宜君县| 武安市| 天长市| 平原县| 新龙县| 崇礼县| 山东省| 凯里市| 清徐县| 乌兰浩特市| 城市| 柞水县| 新沂市| 千阳县| 宁河县| 广丰县| 诸暨市| 泗水县| 江阴市|