変数 s
が文字列かどうかを確認するコードで、
typeof s === 'string' || s instanceof String
というものを見かけた。
名前の通り、あるクラスをインスタンス化してできたものは instanceof
で判別、それ以外で作られたものは typeof
で判別?
str1 = new String('str1')
str2 = 'str2'
console.log(typeof str1) // object
console.log(typeof str2) // string
console.log(str1 instanceof String) // true
console.log(str2 instanceof String) // false