JS switch

let ciudad="Tarragona";

//Analizamos el valor de la variable ciudad
switch(ciudad) {
	case "Barcelona": //Si ciudad = Barcelona entra por aquí
	  console.log("Envío gratis");
	  break; //Y aquí se interrumpe
	case "Tarragona": //Si ciudad= Tarragona o LLeida entra por aquí
	case "LLeida":
	  console.log("Envío 5€");
	  break; //Se interrumpe
	default: //Si no se cumple ninguna de las condiciones anteriores
	  console.log("Envío 10€");
  } 

https://www.w3schools.com/js/js_switch.asp

Ejercicio chat

En el chat que ya tenemos vamos a incluir algunas mejoras:

– Evitar que se puedan mandar mensajes más largos de 140 caracteres
– Filtrar palabras malsonantes
– Posibilidad de enviar emoticonos
– Posibilidad de tener cuatro salas diferentes de chat y elegir a cual te quieres conectar.

Ejercicio react redux thunk

Utilizando la api de generar personas:

https://randomuser.me/documentation

Vamos a crear una aplicación de react con redux que utilice thunk que se irá componiendo de las siguientes fases:

Fase 1: Nos buscará 1 usuario y nos mostrará los siguientes datos: Foto, nombre completo, mail y dirección

Fase 2: Añadir un botón que nos cargue otro usuario al azar.

Fase 3: Al lado del botón tener un input en el que podamos indicar la cantidad de usuarios que queremos retornar.

Fase 4: Añadir al lado del botón si queremos hombres, mujeres o todos.

Fase 5: Añadir al lado un combobox con todas las nacionalidades o escoger alguna de las que nos permite la api

¡Ánimo!

Podemos pasar parámetros a las acciones de thunk.

JS array find y findIndex

Enlaces:

https://www.w3schools.com/jsref/jsref_find.asp
https://www.w3schools.com/jsref/jsref_findindex.asp
https://appdividend.com/2018/12/17/javascript-array-find-example-array-prototype-find-tutorial/

   let num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
 
  console.log(num.find(valor => valor > 5)); //Devuelve 6
    console.log(num.findIndex(valor => valor > 5)); //Devuelve 5
    let cad = "hola que tal";
    console.log(cad.split(" ").find(valor => valor.length <= 3)); //Devuelve que
    console.log(cad.split(" ").findIndex(valor => valor.length <= 3)); //Devuelve 1
    let libros = [{ titulo: "Quijote", paginas: 400 },
    { titulo: "El buscón", paginas: 300 },
    { titulo: "Orestiada", paginas: 200 }]

    console.log(libros.find(valor=>valor.paginas<250));// Devuelve {titulo: "Orestiada", paginas: 200}
    console.log(libros.findIndex(valor=>valor.paginas<250));// Devuelve 2

    //Ejercicio: crear una función que pasándole una cadena nos devuelva la primera palabra que tenga una longitud mayor de 8
    //Ejemplo: primeraLarga("hola que tal")->undefined primeraLarga("en un lugar de la mancha arquetípica y lustrosa")->arquetípica

Ejercicio API

Vamos a consultar libros y artículos del nytimes. Aquí hay la lista de las apis:

https://developer.nytimes.com/apis

Yo me he creado una apikey: SFq0lnJwGzV4X8XyqV2kQvA3LgKAp3kN

Pero os podéis crear la vuestra.

Me gustaría que, desde el postman, accediéramos a la lista de los libros más vendidos y a los artículos de los tres últimos meses.

También podéis crear vuestra propia apikey y acceder, por ejemplo, a películas.

¡A por ello!