Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

284
Views
lanzar un nuevo TypeError o lanzar TypeError

En Typescript, ¿hay alguna diferencia en usar new o no al lanzar (TypeError)?

 throw TypeError("some error here")

y

 throw new TypeError("some error here")

?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Esta es más una pregunta de JavaScript que una pregunta de TypeScript. No, no hay diferencia en el resultado técnico, ambos crean nuevos objetos TypeError (detalles en la especificación ). Cuando se llama normalmente (no a través de new ), tanto Error como los diversos constructores de errores "nativos" ( TypeError , ReferenceError , etc.) realizarán una new llamada (una llamada de construcción ) en lugar de una llamada normal.

 const e1 = new TypeError("Error message here"); console.log(e1 instanceof TypeError); // true console.log(e1.message); // Error message here const e2 = TypeError("Error message here"); console.log(e2 instanceof TypeError); // true console.log(e2.message); // Error message here

Aquí está el mismo código en el área de juegos de TypeScript , que muestra que TypeScript ve tanto e1 como e2 como del tipo TypeError . La razón de esto es que la definición principal de TypeScript para TypeError (en lib.es5.d.ts ) se ve así:

 interface TypeError extends Error { } interface TypeErrorConstructor extends ErrorConstructor { new(message?: string): TypeError; (message?: string): TypeError; readonly prototype: TypeError; } declare var TypeError: TypeErrorConstructor;

Como puede ver, tiene new(message?: string): TypeError; (llamada al constructor que devuelve TypeError ) y (message?: string): TypeError; (llamada normal que devuelve TypeError ).


Subjetivamente, el uso de new es más claro para los lectores del código, destacando que se está creando un nuevo objeto.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!