Aprende a instalar JavaScript localmente para resolver los ejercicios de Exercism en tu propia computadora
Este track se apoya en Node.js en todo momento para proporcionar un entorno de ejecución para JavaScript. Esto significa que asumimos que toda ejecución de JavaScript en tu computadora se hará usando Node.js.
Muchas máquinas vienen con Node.js preinstalado, o puede que se haya instalado antes, o como una dependencia. Así que, antes de hacer cualquier cosa, conviene comprobar si ya está instalado:
Terminal, cmd, Powershell, bash, ...)node -vSi Node.js está instalado, se muestra una versión.
Anota esta versión.
Si Node.js no está instalado, se mostrará un error.
Normalmente, algo como 'node' is not recognised.
Ve al sitio web de Node.js.
Mostrará dos versiones (si detecta tu sistema operativo; si no, selecciona primero tu sistema operativo).
Si tu versión de node -v coincide con una de ellas, todo bien.
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 estuviera bien; es posible que no podamos brindarte soporte si ocurre 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, usar un instalador es lo más fácil.
Cuando el instalador termine, o el gestor de paquetes haya terminado, o el binario se haya copiado y se hayan seguido las instrucciones, es buena idea comprobar que todo esté bien.
Terminal, cmd, Powershell, bash, ...)node -vLa versión debe coincidir con la que aparece en el sitio web.
[!NOTE] Es importante abrir una ventana de terminal nueva. Las ventanas de terminal que ya estén abiertas puede que no se hayan actualizado después de que terminara la instalación. Esto significa que las terminales abiertas no saben que se instaló un programa nuevo.
[!IMPORTANT] > Ayuda:
'node' is not recognisedSi usaste 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 lograrlo agregando lo siguiente a
~/.bash_profileo a~/.zshrc:export PATH=/usr/local/share/npm/bin:$PATHEn Windows, abre el menú de inicio y busca «variables de entorno». Tendrás que editar la entrada
PATHy agregar aquí la ruta a los binarios denpm. Normalmente, se encuentran enC:\Program Files\nodejs. Si navegas hasta aquí con tuFile Explorer, deberías encontrarnode.exe,npm.batynpx.bat.Cierra las terminales que estén abiertas y abre una nueva.
Para usar un gestor de paquetes con control de versiones compatible con este track, hay que habilitar corepack una vez:
corepack enable pnpm
Sigue estas instrucciones para descargar el CLI de Exercism para tu sistema operativo.
Una vez que el CLI esté instalado y configurado, descarga el primer ejercicio, hello-world:
exercism download --exercise=hello-world --track=javascript
Cada ejercicio necesita luego algunas herramientas para ejecutar las pruebas. Se pueden instalar ejecutando este comando dentro del directorio de cada ejercicio:
corepack pnpm install
Como este track cambió a pnpm, no tienes que preocuparte por el espacio en disco. Echa un vistazo a pnpm, que garantiza que solo se instale en disco una copia de cada versión de paquete.
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 instaló según 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. Luego revisapackageManager, que coincide conpnpm, así que puede continuar. Si es necesario, primero actualizarápnpm. Este archivo también enumera las"dependencies"de arriba, que luegopnpmdescarga 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 las pruebas, como se indica en la descripción deexercise.