Skip to Main Content
TypeScript Eficaz, 2ª Edición
book

TypeScript Eficaz, 2ª Edición

by Dan Vanderkam
September 2024
Intermediate to advanced content levelIntermediate to advanced
404 pages
10h 52m
Spanish
O'Reilly Media, Inc.
Content preview from TypeScript Eficaz, 2ª Edición

Capítulo 5. La insensatez y el tipo cualquiera

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

Los 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. Eres libre de 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 10). La clave para ello es el tipo any, que efectivamente desactiva la comprobación de tipos para partes de tu código. Es a la vez potente y propenso al abuso. Aprender a utilizar any sabiamente es esencial para escribir un TypeScript eficaz. Este capítulo te explica cómo limitar los inconvenientes de any sin perder sus ventajas.

El tipo any es sólo el ejemplo más extremo del problema más general de falta de solidez: cuando el tipo estático de un símbolo no coincide con su tipo en tiempo de ejecución. Aunque elimines todos los anys de tu código, puedes caer en trampas de solidez. El tema 48 presenta algunas de ellas y te muestra cómo evitarlas.

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

Considera este código:

declare function getPizza(): Pizza;
function eatSalad(salad: Salad) { /* ... */ }

function eatDinner() {
  const pizza = getPizza();
  eatSalad(pizza);
  //       ~~~~~
  // Argument of type 'Pizza' is not ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Aprender TypeScript

Aprender TypeScript

Josh Goldberg
Angular: En marcha

Angular: En marcha

Shyam Seshadri

Publisher Resources

ISBN: 9781098186333Supplemental Content