Aprende a instalar JavaScript en local para resolver los ejercicios de Exercism en tu propio ordenador
Este track se apoya en Node.js en todo momento para ofrecer un entorno de ejecución para JavaScript. Esto significa que damos por sentado que toda la ejecución de JavaScript en tu ordenador se hará con Node.js.
Muchos ordenadores vienen con Node.js preinstalado, o puede que se haya instalado antes, o como dependencia. Así que, antes de hacer nada, conviene comprobar si ya está instalado:
Terminal, cmd, Powershell, bash, ...)node -vSi Node.js está instalado, se mostrará una versión.
Anota esa versión.
Si Node.js no está instalado, se mostrará un error.
Normalmente, algo parecido a 'node' is not recognised.
Ve a la web de Node.js.
Te mostrará dos versiones (si detecta tu sistema operativo; si no, selecciona primero el tuyo).
Si tu versión de node -v coincide con una de ellas, todo en orden.
Si no coincide, te recomendamos que uses Node.js LTS.
Si te preocupa que actualizar pueda romper algo en tu sistema, puedes continuar como si todo fuera bien;
puede que no podamos ofrecerte soporte cuando ocurra algo inesperado.
Hay un par de formas de instalar Node.js:
Ambas opciones son compatibles con Windows, macOS y Linux. Si no sabes qué hacer, lo más fácil es usar un instalador.
Cuando el instalador haya terminado, o el gestor de paquetes haya finalizado, o se haya copiado el binario y se hayan seguido las instrucciones, es buena idea probar que todo esté bien.
Terminal, cmd, Powershell, bash, ...)node -vLa versión debería coincidir con la de la web.
[!NOTE] Es importante abrir una ventana de terminal nueva. Puede que las ventanas de terminal que ya estén abiertas no se hayan actualizado al terminar la instalación. Esto significa que los terminales abiertos no saben que se ha instalado un programa nuevo.
[!IMPORTANT] > Ayuda:
'node' is not recognisedSi has usado el instalador oficial, tu
PATHdebería haberse configurado automáticamente, pero si tu shell tiene problemas para localizar tus módulos instalados globalmente, o si compilas Node.js desde el código fuente, actualiza tuPATHpara incluir los binarios denpm.En macOS y Linux puedes hacerlo añadiendo lo siguiente a
~/.bash_profileo a~/.zshrc:export PATH=/usr/local/share/npm/bin:$PATHEn Windows, abre el menú de inicio y busca «environment variables». Tendrás que editar la entrada
PATHy añadir aquí la ruta a los binarios denpm. Normalmente, se encuentran enC:\Program Files\nodejs. Si navegas hasta ahí con elFile Explorer, deberías encontrarnode.exe,npm.batynpx.bat.Cierra cualquier terminal abierto y abre uno nuevo.
Para usar un gestor de paquetes versionado compatible con este track, hay que habilitar corepack una vez:
corepack enable pnpm
Sigue estas instrucciones para descargar la CLI de Exercism para tu sistema operativo.
Una vez configurada la CLI, descarga el primer ejercicio, hello-world:
exercism download --exercise=hello-world --track=javascript
Cada ejercicio necesita después algunas herramientas para ejecutar los tests. Se pueden instalar ejecutando este comando dentro del directorio de cada ejercicio:
corepack pnpm install
Como este track ha cambiado a pnpm, no deberías preocuparte por el espacio en disco. Echa un vistazo a pnpm, que garantiza que solo se instale una copia de cada versión de paquete en el disco.
Pero ¿qué es corepack y por qué funciona esto?
No necesitas esta información para completar el track de JavaScript, pero si tienes ganas de entender qué acaba de pasar, los siguientes párrafos son para ti:
Esto funciona porque
corepackes una herramienta que viene incluida con Node.js, que se ha instalado siguiendo los pasos anteriores. Puede instalar el gestor de paquetespnpm. Configura el sistema. El comandocorepackbusca un archivopackage.json, que está presente en cada carpeta de ejercicio. Después compruebapackageManager, que coincide conpnpm, así que puede continuar. Si es necesario, primero actualizarápnpm. Este archivo también lista las"dependencies"de arriba, quepnpmdescarga y coloca en una caché local.Los scripts de
package.jsonusan los binarios de la caché local, y son estos scripts los que se usan para ejecutar los tests, como se indica en la descripción delexercise.