strictNullChecks en tsconfig.json?
Cuando se establece "strictNullChecks": true en tsconfig.json, TypeScript no permite que null o undefined se asignen a variables de otros tipos (como number, string, u objetos) a menos que el tipo de la variable incluya explícitamente null o undefined. Esto ayuda a evitar errores en tiempo de ejecución derivados de referencias a valores null o undefined en lugares inesperados. Por ejemplo, con strictNullChecks activado, una variable de tipo string no puede almacenar null o undefined a menos que se defina como string | null o string | undefined.
strictNullChecks
Para habilitar strictNullChecks, configura tsconfig.json de la siguiente manera:
{
"compilerOptions": {
"strictNullChecks": true
}
}
Con esta configuración, TypeScript será más riguroso y forzará a definir explícitamente el tipo null o undefined en las variables que puedan tener estos valores.
strictNullChecks
let name: string = "Alice";
name = null; // ❌ Error con `strictNullChecks`
let optionalName: string | null = "Bob";
optionalName = null; // ✔️ Correcto, ya que `optionalName` puede ser `null`
En este ejemplo, la variable name no puede ser null porque su tipo es solo string. Sin embargo, optionalName puede ser null porque está definido explícitamente como string | null.
strictNullChecks
1. Prevención de errores comunes: Reduce el riesgo de errores de referencia null o undefined en el código.
2. Mayor seguridad en el tipado: Asegura que los valores null o undefined sean tratados de manera explícita, lo que mejora la claridad y robustez del código.
3. Mantenimiento y legibilidad: Facilita el mantenimiento al forzar una declaración clara de cuándo una variable puede ser null o undefined.
Para más información sobre strictNullChecks y configuraciones avanzadas en TypeScript, consulta la documentación oficial de TypeScript.
Jorge García
Fullstack developer