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

235
Visualizações
En Javascript, ¿cómo puedo arrojar un error que imprime un objeto en la consola?

La console.error() (o console.log() ) tiene algunas características interesantes, como listas de argumentos de longitud variable que imprimen objetos (y matrices):

 const spaghettio = {sauce: 'arrabiata', cheese: 'gorgonzola'} console.log(`Uh oh,`, spaghettio)

El objeto se imprime de manera que puedo expandir las teclas, lo cual es muy útil para objetos grandes:

objeto formateado por console.log()

Pero si quiero arrojar un error real, no tengo esas opciones. Así que normalmente termino haciendo esto:

 console.error(`Uh oh`, spaghettio) throw new Error(`Uh oh: ${spaghettio}`)

La versión de Error generalmente hace un mal trabajo al formatear los objetos y las matrices: Uh oh: [object Object] . puedo hacer

 throw new Error(`Uh oh: ${JSON.stringify(spaghettio)}`)

Pero no importa cómo lo corte, no es tan bueno como lo que hace console.error .

¿Hay una mejor manera de evitar repetirme aquí mientras sigo imprimiendo objetos en la consola?

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

0

La combinación de console.error con throw new Error es probablemente la forma más corta de lograr lo que desea (tenga en cuenta que no podrá expandir el objeto en la consola de StackOverflow, se imprimirá completamente aquí):

 const spaghettio = {sauce: 'arrabiata', cheese: 'gorgonzola'} throw new Error(console.error('Uh oh:', spaghettio))

about 4 years ago · Juan Pablo Isaza Relatório

0

Puede crear sus propios errores y luego crear un manejo personalizado, que puede incluir, por ejemplo, objetos:

 class MyError extends Error { constructor(message, obj) { super(message); this.obj = obj; } } async function x() { throw new MyError('ab', { that: 'is', much: { really: 'weird' } }); } x().catch(err => { if (err instanceof MyError) { console.error(err.message); console.error(err.obj); } })

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