判斷方法:1、用「typeof 變數=== 'string'」語句;2、用「變數instanceof String」;3、用「Object.prototype.toString.call(變數)=== "[object String]"」。
本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。
es6判斷一個變數是否為字串
#方法1:利用typeof關鍵字
#typeof 的語法規則是:typeof operand
。
我們可以直接使用 typeof a === 'string'
來判斷,傳回值為true則是字串。
範例:
var a="123456"; typeof a === 'string'; var b=123456; typeof b === 'string';
另外,列幾個這個運算子比較特殊的情況:
typeof Null; // 'object' typeof NaN; // 'number' typeof Array; // 'object'
方法2:利用instanceof關鍵字
instanceof 的語法規則是object instanceof constructor
。傳回值是 boolean 型別。
instanceof 的工作原理是看建構器的 prototype
屬性是否存在於該物件的原型鏈上。這樣也就意味著它只能判斷物件類型。
如果我們使用 new String("I am string") 這樣的方式建構一個字串,也能使用 instanceof 來判斷。如下:
new String("I am string") instanceof String;
方法3:Object.prototype.toString.call()
##這個方法預設會回傳"[object type]", 其中的type 就是資料的型別。值得說明的是,我們呼叫的時候必須要用 call。
var a="123456"; Object.prototype.toString.call(a) === "[object String]"; var b=123456; Object.prototype.toString.call(b) === "[object String]";
以上是es6怎麼判斷一個變數是否為字串的詳細內容。更多資訊請關注PHP中文網其他相關文章!