class PrimitiveString {
static [Symbol.hasInstance](x) {
return typeof x === 'string'
}
}
// 'abc' instanceof PrimitiveString === true
对象的 Symbol.hasInstance
属性,指向一个内部方法。当其他对象使用instanceof
运算符,判断是否为该对象的实例时,会调用这个方法。这里实际上我们自定义了这个 instanceof 的行为。
网友评论