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

資訊專欄INFORMATION COLUMN

筆記-js判斷變量類型

Carbs / 3144人閱讀

摘要:平時(shí)業(yè)務(wù)代碼寫多了,學(xué)習(xí)又懈怠,對(duì)的基本功能都不太熟悉了,面試答不上來(lái),哭唧唧使用判斷的是基本數(shù)據(jù)類型。未定義變量使用操作符主要基于類型的判斷。假設(shè)基于創(chuàng)建一個(gè)類個(gè)分別是。

平時(shí)業(yè)務(wù)代碼寫多了,學(xué)習(xí)又懈怠,對(duì)js的基本功能都不太熟悉了,面試答不上來(lái),哭唧唧
1.使用typeof

判斷的是基本數(shù)據(jù)類型。

{} object
[] object
function(){} function
"1" string
null object
undefined/未定義變量 undefined
1/NaN number
true boolean
Symbol() symbol
2.使用instanceof操作符

主要基于object類型的判斷。

假設(shè)基于React.Component創(chuàng)建一個(gè)類

class Board extends React.Component {
    //...
    
    render() {
        console.log(this instanceof Board);// true
        console.log(this instanceof React.Component);// true  
        console.log(React.Component.prototype.isPrototypeOf(this));// true
        console.log(this instanceof Object);// true
        console.log(this instanceof Game);// false
    }
    
    //...
}

class Game extends React.Component {
    // ...
}

5個(gè)log分別是true true true true false。
基本可以看出instanceof與原型鏈有關(guān),MDN上的描述是The instanceof operator tests whether the prototype property of a constructor appears anywhere in the prototype chain of an object.
是否這個(gè)構(gòu)造函數(shù)的prototype屬性出現(xiàn)在這個(gè)對(duì)象的原型鏈中。

如果改動(dòng)了React.Component.prototype,就會(huì)出現(xiàn)

console.log(this instanceof React.Component); // false  

其他

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

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

相關(guān)文章

  • js筆記內(nèi)容

    摘要:定義運(yùn)算符用來(lái)判斷一個(gè)構(gòu)造函數(shù)的屬性所指向的對(duì)象是否存在另外一個(gè)要檢測(cè)對(duì)象的原型鏈上,用于引用類型。但其實(shí),實(shí)例的來(lái)自于構(gòu)造函數(shù)的。 一、關(guān)于css 樣式優(yōu)先級(jí): 行內(nèi)樣式>id選擇器樣式>類選擇器樣式>標(biāo)簽選擇器樣式>通配符選擇器的樣式>繼承樣式>默認(rèn)樣式 二、關(guān)于js 關(guān)于問題:**JavaScript中的所有事物都是對(duì)象??** 從typeof和instanceo...

    n7then 評(píng)論0 收藏0
  • 《javascript高級(jí)程序設(shè)計(jì)》筆記變量變量檢測(cè)

    摘要:變量的特點(diǎn)變量是松散類型的,所謂松散類型就是可以用來(lái)保存任何類型的數(shù)據(jù)。 變量的特點(diǎn) js變量是松散類型的,所謂松散類型就是可以用來(lái)保存任何類型的數(shù)據(jù)。換句話說(shuō), 每個(gè)變量?jī)H僅是一個(gè)用于保存值的占位符而已 js變量可以用來(lái)保存任何值,未經(jīng)過(guò)初始化的變量,會(huì)保存一個(gè)特殊的值—undefined,如:var msg; js變量的初始化并不會(huì)為它標(biāo)記類型;初始化的過(guò)程就是給變量賦一個(gè)值那...

    XiNGRZ 評(píng)論0 收藏0
  • <<編寫可維護(hù)的javascript>> 筆記8(避免'空比較&#

    摘要:中常常會(huì)看到這種代碼變量與的比較這種用法很有問題用來(lái)判斷變量是否被賦予了一個(gè)合理的值比如不好的寫法執(zhí)行一些邏輯這段代碼中方法顯然是希望是一個(gè)數(shù)組因?yàn)槲覀兛吹降膿碛泻瓦@段代碼的意圖非常明顯如果參數(shù)不是一個(gè)數(shù)組則停止接下來(lái)的操作這種寫法的問題在 js中, 常常會(huì)看到這種代碼: 變量與null的比較(這種用法很有問題), 用來(lái)判斷變量是否被賦予了一個(gè)合理的值. 比如: const Contr...

    young.li 評(píng)論0 收藏0
  • 2019面試筆記

    摘要:使用構(gòu)造函數(shù)創(chuàng)建對(duì)象后,新對(duì)象與構(gòu)造函數(shù)沒有關(guān)系了,新對(duì)象的屬性指向的是構(gòu)造函數(shù)的原型對(duì)象。構(gòu)造繼承使用父類的構(gòu)造函數(shù)來(lái)增強(qiáng)子類的實(shí)例,等于是在子類的構(gòu)造函數(shù)內(nèi)部執(zhí)行。 一.js原始類型: 在js中,存在著6種原始值: * boolean * number * string * undefined * null * symbol 注意: 雖然typeof null輸出的是o...

    nidaye 評(píng)論0 收藏0
  • 讀書筆記(02) - 可維護(hù)性 - JavaScript高級(jí)程序設(shè)計(jì)

    摘要:解耦優(yōu)勢(shì)代碼復(fù)用,單元測(cè)試。常用比較誤區(qū)可同時(shí)判斷,可用來(lái)判斷對(duì)象屬性是否存在。使用作判斷無(wú)法進(jìn)行充分的類型檢查。文件中應(yīng)用常量參考文檔高級(jí)程序設(shè)計(jì)作者以樂之名本文原創(chuàng),有不當(dāng)?shù)牡胤綒g迎指出。 showImg(https://segmentfault.com/img/bVburXw?w=500&h=400); 編寫可維護(hù)性代碼 可維護(hù)的代碼遵循原則: 可理解性 (方便他人理解) 直觀...

    k00baa 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<