1、instanceof 与 typeof
在 JS 中,判断一个变量的类型常常会用 typeof 运算符,在使用 typeof 运算符时采用 引用类型存储值 会出现一个问题,无论引用的是什么类型的对象,它都会返回 “object”。ECMAScript 引入了另一个 Java 运算符 instanceof 来解决这个问题。
instanceof 运算符与 typeof 运算符相似,用于识别正在处理的对象的类型。
与 typeof 方法不同的是,instqanceof 方法要求开发者明确地确认对象为某特定类型。如:
let str = new String('Hello world'); console.log(str instanceof String) // true
这段代码的问的是: 变量 str 是否为 String 对象的实例。
尽管 instanceof 方法不像 typeof 方法那样灵活,但是在 typeof方法 返回 “object” 的情况下,instanceof 方法还是很有用的。