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

351
Visualizações
Cómo arrojar un error al usar una propiedad de un objeto

Me gustaría que JS arroje un error cuando se usa un objeto que no está correctamente instanciado.

Ya he intentado así:

 var person = function () { throw new Error('Person not instantiated!'); }; ... var x = person.age; //should throw an error when person isn't overwritten

pero no arroja un error como lo quiero (solo si escribiría person(); ).

El problema aquí es que entrego el objeto en numerosos métodos y no quiero hacer un manejo de errores para todas las ocurrencias. ¿Hay alguna forma de arrojar un error al leer una propiedad de un objeto?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

¿Hay alguna forma de arrojar un error al leer una propiedad de un objeto?

Sí, puede parchear el captador de propiedades con una función que arroja un error

 var person = {}; Object.defineProperty(person, 'age', { get: function () { throw new Error('Person not instantiated!') }, }); var x = person.age;

O también puede reemplazar el objeto con un Proxy que le permitirá anular un getter para todas las propiedades:

 var person = new Proxy({}, { get(target, name) { throw new Error('Person not instantiated!'); } }); var x = person.age; var y = person.name;

Pero todo esto es un antipatrón. Es algo que sugeriría en contra.

about 4 years ago · Juan Pablo Isaza 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