A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Global_Objects/Symbol/hasInstance below:

Symbol.hasInstance - JavaScript | MDN

Symbol.hasInstance

Baseline Widely available

El símbolo conocido como Symbol.hasInstance se utiliza para determinar si un objeto constructor reconoce un objeto como su instancia. El comportamiento del operador instanceof puede personalizarse mediante este símbolo.

Pruébalo
class Array1 {
  static [Symbol.hasInstance](instance) {
    return Array.isArray(instance);
  }
}

console.log([] instanceof Array1);
// Expected output: true
Sobrescribir No Numerable No Configurable No Ejemplos Comportamiento de instanceof personalizado

Podrías personalizar el comportamiento de instanceof de la siguiente manera, por ejemplo:

class MyArray {
  static [Symbol.hasInstance](instance) {
    return Array.isArray(instance);
  }
}
console.log([] instanceof MyArray); // true
function MyArray() {}
Object.defineProperty(MyArray, Symbol.hasInstance, {
  value: function (instance) {
    return Array.isArray(instance);
  },
});
console.log([] instanceof MyArray); // true
Comprobación de la instancia de un objeto

De la misma manera que se puede comprobar si un objeto es una instancia de una clase utilizando la palabra clave instanceof, también podemos utilizar Symbol.hasInstance para dichas comprobaciones.

class Animal {
  constructor() {}
}

const cat = new Animal();

console.log(Animal[Symbol.hasInstance](cat)); // true
Especificaciones Compatibilidad con navegadores Véase también

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4