VSCode es, sin lugar a dudas, un gran editor. En cada actualización podemos encontrar un sin número de mejoras que resultan en una mejor experiencia a la hora de programar. El apoyo nativo a TypeScript es una de las razones por la cual el editor se destaca sobre las demás opciones. Desde la versión de abril 2017, la 1.12 para ser exacto, se ha introducido la habilidad de poder utilizar TypeScript sobre JavaScript. Pensarás que estoy a punto de escribir un soberano disparate, pero como bien sabes, TypeScript es un compilador que trabaja transcribiendo código JavaScript creado con la extensión en el archivo .ts. Así el compilador se encarga de convertir ese código JavaScript tipado y con anotaciones en plain vanilla JavaScript.

Hay dos razones principales para usar TypeScript. Esta herramienta nos ayuda a obtener menos errores de código y mejora la calidad de nuestro software. Lo mejor de todo es que con VSCode no necesitas hacer cambios masivos a tu código fuente.

Actualmente la barrera para comenzar a jugar con TypeScript se ha reducido significativamente. Desde la versión 1.12 de VSCode no necesitas cambiar la extensión del archivo .js a .ts para aprovecharte de los beneficios de TypeScript. El editor es capaz de inferir el tipado sin mucho esfuerzo. Para esto debes verificar que estás usando TypeScript versión >= 2.3. Si usas JSDoc como patrón de diseño y documentación TypeScript va a inferir el tipado de tu código a través de esas definiciones. Técnicamente no tienes que hacer nada si usas JSDoc.

Si deseas experimentar con TypeScript de forma más pasiva, la manera más fácil de habilitar la verificación de tipos en un archivo JavaScript es agregando // @ ts-check en la parte superior de un archivo de JavaScript. Utilizar // @ ts-check es un buen recurso si solo deseas probar la verificación de tipos en algunos archivos, pero aún no habilitarlo para el código fuente completo.

Para comenzar a utilizar esta función de VSCode solo tienes que añadir la siguiente declaración a tu workspace o user settings:

"javascript.implicitProjectConfig.checkJs":true

Si deseas evitar que algún o algunos archivos individuales queden fuera de la comprobación de tipos solo debes añadir a //@ts-nocheck en la parte superior del archivo. Si usas jsconfig.json o tsconfig.json en tus proyectos, la configuración definida en estos archivos tendrá precedencia sobre la configuración estándar de VSCode. También puedes deshabilitar la verificación de tipo de una línea de código en particular utilizando //@ts-ignore sobre la línea antes del error.

A continuación varios ejemplos que afectan el código base en su totalidad:

jsconfig.json:


{
    "compilerOptions": {
        "checkJs": true
    },
    "exclude": [
        "node_modules"
    ]
}

tsconfig.json:

{
    "compilerOptions": {
        "allowJs": true,
        "checkJs": true
    },
    "exclude": [
        "node_modules"
    ]
}

En conclusión, si deseas mejorar la calidad de tu JavaScript no tienes excusas para no tratarlo a través de TypeScript.