Skip to content

Latest commit

 

History

History
311 lines (244 loc) · 6.32 KB

File metadata and controls

311 lines (244 loc) · 6.32 KB

Clase 8

Dudas

Conocéis alguna fuente donde encontrar APIs molonas para consumir?

img

Retos: coolsole, nuestra primera librería de JS!

Hagamos una librería como Guild para hacer un sistema más avanzado de gestión de la consola.

Asignación por igualdad

	var administrador = 'Yo mismo';
	var esAdministrador = (administrador === 'Yo mismo');

If... else

  • Estructura:

    /* IF ...ELSE
    if (-algo verdadero-) {
        -ejecutaremos este código-
    } else {
        -Si lo anterior no era verdadero, se ejecutara este código-
    };
    */
  • Documentación:

  • Ejemplo:

    if (true) {
        console.log("true, por eso me ejecuto");
    } else {
        console.log("false, por eso me ejecuto");
    }

Else if...

function testCondiccion (condicion){
    if (condicion == 1) {
        console.log("1, por eso me ejecuto");
    } else if (condicion == 2){
        console.log("2, por eso me ejecuto");
    } else {
        console.log("no es 1 o 2, por eso me ejecuto");
    }
}

Switch

  • Estructura:

    /* Switch
    switch(expresión) {
        case n:
            //Código
            break;
        case n:
            //Código
            break;
        default:
            //Código
    }
    */
  • Documentación:

  • Casos únicos:

    var nombre = "";
    switch (nombre) {
      case "Pepe":
        console.log("Hola Pepe");
        break;
      case "Luis":
        console.log("Hola Luis");
        break;
      case "Antonio":
        console.log("Hola Antonio");
        break;
      default:
        console.log('Ninguno de los nombres que pensamos... es '+nombre);
    }
  • Multiples coincidencias:

    var nombre = "";
    switch (nombre)
    {
       case "Pepe":
       case "Luis":
       case "Antonio":
           alert('Hola '+nombre);
           break;
    
       default:
           console.log('Ninguno de los nombres que pensamos... es '+nombre);
    }

Operador Ternario (?:)

  • Estructura:

    /* 
    -- Una operación por caso --
    condicion ? expresion1 : expresion2 
    
    -- Multiples Operaciones por caso --
    condicion ? (
    	operacion1,
    	operacion2,
    	otraoperacion
    ) : ( 
    	operacion1,
    	operacion2,
    	otraoperacion
    );
    
    -- Evaluaciones multiples --
    	condicion ? expresion1 : condicion2 ? expresion1 : expresion2;
    */
  • Una operación por caso:

	var esMiembro = true;
	console.info("El pago son  " + (esMiembro ? "20.00€" : "50.00€"));
  • Evalución múltiple:
	var esMiembro = true;
	var esAdulto = true;
	console.info(esMiembro ? "El pago son 20.00€" : esAdulto ? "Puedes enviar la solicitud cuando quieras" : "Tines que esperar aún. Lo siento.");
  • Múltiples Operaciones:
	var mensaje,
	esMiembro = true;
	
	esMiembro ? (
		mensaje = "El pago son 20.00€",
		console.info(mensaje)
	) : (
		mensaje = "El pago son 50.00€",
		console.info(mensaje)
	);

Ejercicios

Realiza los siguientes ejercicios usando en cada uno los tres tipos de condicionales (If...else, Switch, operador ternario )

1 - Diseña un algoritmo que lea dos números y los compare. Como resultado esperamos que nos diga cual es mayor... o si son iguales.

  • Usando if...else
    // Tu solución
  • Usando Operador Ternario (?:)
    // Tu solución
  • Usando Switch
    // Tu solución

2 - Diseña un script que lea tres números distintos y nos diga cual de ellos es el mayor.

  • Usando if...else
    // Tu solución
  • Usando Operador Ternario (?:)
    // Tu solución
  • Usando Switch
    // Tu solución

3 - Diseña un script que siga el siguiente proceso:

  • Si el primero es negativo, debe sumar los otros dos

  • Sino multiplicará los tres numeros

  • Mostrar el resultado final incluyendo una referencia a la operación realizada.

  • Usando if...else

    // Tu solución
  • Usando Operador Ternario (?:)
    // Tu solución
  • Usando Switch
    // Tu solución

4 - Diseña un algoritmo que aplique al precio de un producto un descuento cuando se den las siguientes caracteristicas.

  • Se aplica un 25% cuando:

    • Estamos en los meses de invierno
    • Y no es viernes o fin de semana.
  • Usando if...else

    // Tu solución
  • Usando Operador Ternario (?:)
    // Tu solución
  • Usando Switch
    // Tu solución

5 - Diseña un algoritmo que al introducir un numero nos diga si es positivo o negativo.

  • Usando if...else
    // Tu solución
  • Usando Operador Ternario (?:)
    // Tu solución
  • Usando Switch
    // Tu solución

6 - Diseña un algoritmo que al introducir un número nos diga si es par o impar.

  • Usando if...else
    // Tu solución
  • Usando Operador Ternario (?:)
    // Tu solución
  • Usando Switch
    // Tu solución

7 - Diseña un algoritmo que nos confirme si un año es bisiesto o no.

  • Caracteristicas de un año bisiesto:

    • Tiene que ser divisible entre 4
    • No tiene que ser divisible entre 100
    • Puede ser divisble entre 100 y entre 400
  • Usando if...else

    // Tu solución
  • Usando Operador Ternario (?:)
    // Tu solución
  • Usando Switch
    // Tu solución

Tiempo para proyecto personal

img_promo