Formas de inicializar variables en TypeScript
Existen varias maneras de inicializar variables en TypeScript, dependiendo de si usas tipos explícitos, inferencia de tipos o características avanzadas como valores predeterminados o null.
1. Inicialización con tipo explícito
Cuando declaras una variable en TypeScript, puedes especificar explícitamente el tipo de dato. Esto asegura que la variable solo pueda almacenar valores de ese tipo.
Ejemplo de tipo explícito:
let nombre: string = "Juan"; // Inicialización explícita de una variable tipo string
let edad: number = 30; // Inicialización explícita de una variable tipo number
let esActivo: boolean = true; // Inicialización explícita de una variable tipo boolean
En este caso, la variable nombre solo puede almacenar valores de tipo string, edad solo puede ser number y esActivo solo puede ser boolean.
2. Inicialización con inferencia de tipos
Cuando no defines explícitamente un tipo, TypeScript puede inferir el tipo basado en el valor que le asignas a la variable. Este es un enfoque más flexible que reduce la necesidad de escribir el tipo manualmente.
Ejemplo de inferencia de tipos:
let nombre = "Juan"; // Inferido como string
let edad = 30; // Inferido como number
let esActivo = true; // Inferido como boolean
Aquí, TypeScript infiere automáticamente el tipo de la variable basándose en el valor que se le asigna. En este caso, nombre será de tipo string, edad será de tipo number y esActivo será de tipo boolean.
3. Inicialización de variables con const, let y var
En TypeScript, puedes declarar variables con los siguientes modificadores de alcance:
const: Usado para declarar variables cuyo valor no cambiará después de la inicialización. El valor es constante, pero su tipo puede ser inferido. const pi = 3.14; // Inferido como number, no puede cambiar su valor
let: Usado para declarar variables cuyo valor puede cambiar. El tipo puede ser inferido o explícito.typescriptCopiar códigolet contador = 0; // Inferido como number, puede cambiar su valor
var: Aunque es menos común en TypeScript, se usa para declarar variables con un alcance de función. Tiene un comportamiento diferente en cuanto a hoisting y puede ser reemplazado por let o const en la mayoría de los casos. var mensaje = "Hola"; // Inferido como string, puede cambiar
4. Inicialización con valores predeterminados
Puedes asignar un valor predeterminado a las variables al momento de declararlas, lo cual es útil cuando quieres asegurar que la variable tenga un valor inicial adecuado.
Ejemplo con valores predeterminados:
let nombre: string = "Juan"; // Valor predeterminado "Juan"
let edad: number = 30; // Valor predeterminado 30
Si más adelante deseas cambiar el valor de la variable, puedes hacerlo sin restricciones:
nombre = "Maria"; // El tipo sigue siendo string
edad = 25; // El tipo sigue siendo number
5. Inicialización con null o undefined
En TypeScript, puedes inicializar una variable con null o undefined, pero debes tener en cuenta que esto puede hacer que el tipo sea más flexible.
Ejemplo con null o undefined:
let persona: { nombre: string, edad: number } | null = null;
En este ejemplo, persona puede ser un objeto con una propiedad nombre de tipo string y una propiedad edad de tipo number, o puede ser null. Esto es útil cuando necesitas representar un valor ausente o vacío.
Si no deseas permitir que una variable tenga valores null o undefined, puedes usar el operador strictNullChecks en el tsconfig.json para forzar una mayor seguridad de tipos.