Introducción
En este laboratorio, exploraremos cómo comprobar si los argumentos del proceso contienen banderas utilizando JavaScript. Aprenderás cómo utilizar los métodos Array.prototype.every() y Array.prototype.includes() para comprobar si las banderas especificadas están presentes en el array process.argv. Además, aprenderás cómo utilizar expresiones regulares para prefijar las banderas especificadas con - o -- según sea necesario. Este laboratorio te ayudará a mejorar tu comprensión de JavaScript y cómo trabajar con argumentos de línea de comandos en Node.js.
Comprobar si los argumentos del proceso contienen banderas
Para comprobar si los argumentos del proceso actual contienen banderas específicas, siga estos pasos:
- Abra la Terminal/SSH y escriba
nodepara comenzar a practicar la codificación. - Utilice
Array.prototype.every()yArray.prototype.includes()para comprobar siprocess.argvcontiene todas las banderas especificadas. - Utilice una expresión regular para probar si las banderas especificadas están prefijadas con
-o--y prefíjelas en consecuencia.
A continuación, se muestra un fragmento de código que demuestra cómo implementar esto:
const hasFlags = (...flags) =>
flags.every((flag) =>
process.argv.includes(/^-{1,2}/.test(flag) ? flag : "--" + flag)
);
Puede probar la función con diferentes banderas de la siguiente manera:
// node myScript.js -s --test --cool=true
hasFlags("-s"); // true
hasFlags("--test", "cool=true", "-s"); // true
hasFlags("special"); // false
Resumen
¡Felicidades! Has completado el laboratorio Comprobar si los argumentos del proceso contienen banderas. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.