Symbol.hasInstance
Le symbole « connu » Symbol.hasInstance est utilisé afin de déterminer si un objet constructeur reconnaît un objet comme une de ses instances. On peut donc adapter/personnaliser le comportement de l'opérateur instanceof grâce à ce symbole.
Exemple interactif
Attributs de Symbol.hasInstance |
|
|---|---|
| Écrivable | Non |
| Énumérable | Non |
| Configurable | Non |
Exemples
On peut implémenter un comportement différent pour instanceof de cette façon :
js
class MonArray {
static [Symbol.hasInstance](instance) {
return Array.isArray(instance);
}
}
console.log([] instanceof MonArray); // true
Spécifications
| Specification |
|---|
| ECMAScript Language Specification # sec-symbol.hasinstance |
Compatibilité des navigateurs
BCD tables only load in the browser