Capítulo 5. Trabajar con cualquier

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

Sistemas de tipos eran tradicionalmente asuntos binarios: o un lenguaje tenía un sistema de tipos totalmente estático o uno totalmente dinámico. TypeScript difumina la línea, porque su sistema de tipos es opcional y gradual. Puedes añadir tipos a partes de tu programa, pero no a otras.

Esto es esencial para migrar poco a poco las bases de código JavaScript existentes a TypeScript(Capítulo 8). La clave es el tipo any, que desactiva la comprobación de tipos en partes de tu código. Es a la vez potente y propenso al abuso. Aprender a utilizar any sabiamente es esencial para escribir TypeScript eficazmente. Este capítulo te explica cómo limitar los inconvenientes de any sin perder sus ventajas.

Tema 38: Utiliza el ámbito más reducido posible para cualquier tipo

Considera este código:

function processBar(b: Bar) { /* ... */ }

function f() {
  const x = expressionReturningFoo();
  processBar(x);
  //         ~ Argument of type 'Foo' is not assignable to
  //           parameter of type 'Bar'
}

Si de alguna manera sabes por el contexto que x es asignable a Bar además de a Foo, puedes forzar a TypeScript a aceptar este código de dos maneras:

function f1() {
  const x: any = expressionReturningFoo();  // Don't do this
  processBar(x);
}

function f2() {
  const x = expressionReturningFoo();
  processBar(x as any);  // Prefer this
}

De éstas, la segunda forma es ampliamente ...

Get TypeScript eficaz now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.