Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

94
Visualizações
Propiedad Symbol.hasInstance trabajando en JS

Entiendo que la propiedad Symbol.hasInstance se puede personalizar para verificar si un objeto es una instancia de una clase en particular. Pero lo que no entiendo es cómo funciona esto. Ejemplo:

 class Animal { static [Symbol.hasInstance](obj){ // how is this obj being passes here on calling the function below if(obj.isAnimal) return true } } const a1 = new Animal(); console.log(a1 instanceOf Animal) // false a1.isAnimal = true console.log(a1 instanceOf Animal) // true

Pregunta : ¿Cómo se pasa obj a la función estática al llamar a una a1 instanceOf Animal

about 4 years ago · Santiago Gelvez
1 Respostas
Responde à pergunta

0

Muchas veces se puede llamar a una función incluso si no hay nada en el código que lo haga explícitamente con () después del nombre de la propiedad. Por ejemplo, con iteradores:

 class C { *[Symbol.iterator]() { for (let i = 0; i < 3; i++) yield i; } } const c = new C(); for (const item of c) { console.log(item); }

Y escriba coerción:

 const obj = { toString: () => 'some obj' }; console.log(String(obj));

y apoderados.

 const prox = new Proxy({}, { has() { console.log('has invoked'); return true; } }); console.log('foo' in prox);

instanceof es solo otra de estas circunstancias.

x instanceof y se especifica para extraer primero el valor en el símbolo hasInstance de y , si existe tal valor:

  1. Sea instOfHandler ? GetMethod(objetivo, @@hasInstance).

y luego será invocado con x . Si el valor no existe, se llamará a OrdinaryHasInstance con x e y en su lugar. Eso es todo lo que hay que hacer: instanceof , por definición, buscará e intentará llamar a una propiedad Symbol.hasInstance si la hay.

Para casi todos los operadores, puede pensar en x someOperator y como invocando someOperator con x e y , y el operador a menudo hace una serie de cosas con los operandos detrás de escena.

about 4 years ago · Santiago Gelvez Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda