Symbol.hasInstance
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2015.
Symbol.hasInstance
用于判断某对象是否为某构造器的实例。因此你可以用它自定义 instanceof
操作符在某个类上的行为。
尝试一下
Symbol.hasInstance 的属性特性 | |
---|---|
可写 | 否 |
可枚举 | 否 |
可配置 | 否 |
示例
你可实现一个自定义的instanceof
行为,例如:
js
class MyArray {
static [Symbol.hasInstance](instance) {
return Array.isArray(instance);
}
}
console.log([] instanceof MyArray); // true
规范
Specification |
---|
ECMAScript Language Specification # sec-symbol.hasinstance |
浏览器兼容性
BCD tables only load in the browser