您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“es6如何判斷一個(gè)變量是否為字符串”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
判斷方法:1、用“typeof 變量=== 'string'”語(yǔ)句;2、用“變量 instanceof String”;3、用“Object.prototype.toString.call(變量)==="[object String]"”。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
es6判斷一個(gè)變量是否為字符串
方法1:利用typeof關(guān)鍵字
typeof 的語(yǔ)法規(guī)則是:typeof operand
。
我們可以直接使用 typeof a === 'string'
來(lái)判斷,返回值為true則就是字符串。
示例:
var a="123456"; typeof a === 'string'; var b=123456; typeof b === 'string';
另外,列幾個(gè)這個(gè)操作符比較特殊的情況:
typeof Null; // 'object' typeof NaN; // 'number' typeof Array; // 'object'
方法2:利用instanceof關(guān)鍵字
instanceof 的語(yǔ)法規(guī)則是 object instanceof constructor
。返回值是 boolean 類型。
instanceof 的工作原理是看構(gòu)造器的 prototype
屬性是否存在于該對(duì)象的原型鏈上。這樣也就意味著它只能判斷對(duì)象類型。
如果我們使用 new String("I am string") 這樣的方式構(gòu)造一個(gè)字符串,也能使用 instanceof 來(lái)判斷。如下:
new String("I am string") instanceof String;
方法3:Object.prototype.toString.call()
這個(gè)方法默認(rèn)會(huì)返回 "[object type]
", 其中的 type 就是數(shù)據(jù)的類型。值得說(shuō)明的是,我們調(diào)用的時(shí)候必須要用上 call。
var a="123456"; Object.prototype.toString.call(a) === "[object String]"; var b=123456; Object.prototype.toString.call(b) === "[object String]";
“es6如何判斷一個(gè)變量是否為字符串”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。