Prácticas con JavaScript
Desarrollo de Aplicaciones Telemáticas, 2021-2022
Grado en Ingeniería en Tecnologías de la Telecomunicación
Grado en Ingeniería en Sistemas de Telecomunicación
Escuela Técnica Superior de Ingeniería de Telecomunicación
Universidad Rey Juan Carlos


Cambios en el documento

Instrucciones generales

Práctica 3.1. Tipos de datos

Escribe en un fichero ~/dat/practica03/test01.js un programa JavaScript similar a los ejemplos de las transparencias (pero no igual) que haga conversiones entre distintos tipos de datos y que detecte el valor NaN.

Práctica 3.2. Expresiones

Escribe en un fichero ~/dat/practica03/test02.js un programa JavaScript similar a los ejemplos de las transparencias (pero no igual) para probar ejemplos básicos de expresiones aritméticas y expresiones booleanas, con el doble igual y con el triple igual.

Práctica 3.3. Funciones

Escribe en un fichero ~/dat/practica03/test03.js un programa JavaScript similar a los ejemplos de las transparencias (pero no igual) con funciones que ilustren que en JavaScript el paso de valores a las funciones es por valor y no por referencia. También el uso de valores por omisión de un parámetro (al estilo ECMAScript 6).

Práctica 3.4. Funciones flecha

Escribe en un fichero ~/dat/practica03/test04.js un programa JavaScript similar a los ejemplos de las transparencias (pero no igual) con una función sencilla con notación tradicional, y una función equivalente con notación flecha.

Práctica 3.5. Switch

Escribe en un fichero ~/dat/practica03/test05.js un programa JavaScript similar a los ejemplos de las transparencias (pero no igual) que tenga una función que use switch. Y otra función, equivalente, basada en if then.

Práctica 3.6. For y while

Escribe en un fichero ~/dat/practica03/test06.js un programa JavaScript similar a los ejemplos de las transparencias (pero no igual) que tenga una función que use for. Y otra función equivalente, basada en while.

Práctica 3.8. Funciones básicas

Escribe un fichero ~/dat/practica03/js01.js que contenga:

Práctica 3.9. Funciones.

Escribe en un fichero ~/dat/practica03/convierte.js un programa JavaScript que tenga una función que reciba dos parámetros:

La función devolverá

Práctica 3.10. Sustitución de espacios

Escribe un programa en JavaScript 6 llamado ~/dat/practica03/quitaEspacios.js que tenga una función que reciba una cadena, y que devuelva esa misma cadena, pero reemplazando los espacios por barras bajas (_). Observa que el nombre del programa es quitaEspacios.js, en notación dromedario.

Práctica 3.11. Plain objects

Escribe en un fichero ~/dat/practica03/buscaObjeto.js un programa en JavaScript que:

En estos ejemplos, 01234, seat o 1 serían un parámetro de la función de búsqueda, no un valor constante en esa función.

Práctica 3.12. Busqueda de caracteres

Escribe en un fichero ~/dat/practica03/buscaCadena.js un programa en JavaScript que tenga una función que:

Práctica 3.13. Validación de contraseña

Escribe en un fichero ~/at/practica03/valida.js un programa JavaScript que tenga una función que indique si una contraseña tiene la fortaleza requerida

Recibirá los siguientes parámetros:

  1. La contraseña.

  2. La longitud total que deberá tener la contraseña para que se considere válida.

  3. El número mínimo de minúsculas exigidas. Puede ser 0. Por letra minúscula entenderemos todas las letras inglesas minúsculas, mas la eñe minúscula. Las letras con tilde o con diéresis no las consideramos letras a estos efectos.

    Ejemplo: si el número mínimo de minúsculas exigido es 2, la cadena ESPAña sería válida. Pero CAñóN no, porque la ó con tilde no se considera en este caso correcta (podría ser un carácter especial si así lo especificara el usuario de la librería)

  4. El número mínimo de mayúsculas. Puede ser 0. Como en el apartado anterior, consideramos letra mayúscula todas las letras inglesas, más la eñe mayúscula. Y no consideramos letra las letras con tilde o con diéreses.

    Del mismo modo, si se exigieran por ejemplo al menos 2 mayúsculas, espAÑA sería correcto tendría 3 mayúsculas. Pero ÑandÚ no, porque la Ú no la contaríamos como letra mayúscula.

  5. El número mínimo de números exigidos. (Puede ser 0)

  6. El número mínimo de caracteres especiales exigido. (Puede ser 0)

  7. Una cadena que contendrá todos los caracteres que serán considerados especiales. P.e.

    ,.-{}[]!"·$%&/()=?¿¡'
      

    Si la contraseña contiene algún carácter especial no incluido en esta lista, se considerará incorrecta.

    Si esta cadena que especifica lo que se considera especial contiene números o letras ordinarias, puedes hacer lo que prefieras: comprobarlo o no, dar un error, ignorarlo, considerarlo un carácter especial, etc

Devolverá

Observaciones adicionales:

Práctica 3.14. Paradoja del cumpleaños

Sea un conjunto aleatorio de personas. ¿Cuál es la probabilidad de que al menos dos de ellas cumplan años el mismo día? La llamada paradoja del cumpleaños (https://es.wikipedia.org/wiki/Paradoja_del_cumplea%C3%B1os) nos dice que si hay al menos 23 personas, la probabilidad es superior al 50%. Si hay al menos 41, la probabilidad es superior al 90% y si son 57, superior al 99%.

Escribe un programa llamado ~/dat/practica03/paradoja.js que tenga:

Observaciones: