function makeUser(name, age) { return { name, age, for:5, 7:"hola", "1":"boo", }; } let user = makeUser("John", 30); console.log(user); let user2 = makeUser("Ana", 50); // Si una propiedad existe console.log("name" in user2); console.log("names" in user2); // Recorro todas las propiedades for (clave in user){ console.log(clave,user[clave]) } // Los objetos son referencias let user3=user2; user3.name="Eustaquio"; console.log(user2); // Para copiar un objeto tenemos varias opciones let user4={}; // Usamos assign para copiar valores Object.assign(user4,user); user4.name="Ares"; console.log(user); console.log(user4); let a={ a:1 }; let b={ b:2 }; let c={ c:3, a:6 }; let d={}; Object.assign(d,a,b,c); console.log(d) //{a: 1, b: 2, c: 3} let user5 = { name: "John", sizes: { height: 182, width: 50 } }; // Esto lo usamos para copiar de manera recursiva let clone = structuredClone(user5);
Ejemplos objetos
let user = { // un objeto name: "John", // En la clave "name" se almacena el valor "John" age: 30, // En la clave "age" se almacena el valor 30 age2: 30, // En la clave "age" se almacena el valor 30 }; console.log(user) console.log(user.name) user.apellidos = "Pi"; console.log(user); delete user.age; let prop="apellidos"; console.log(user[prop]); let foo="www"; user[foo]=7; console.log(user); let test={ [foo]:1, [prop]:"Pi", } console.log(test)
Ejemplo funciones flecha
// Formato standard de la función flecha let sum = (a, b) => a + b; // Funciones flecha multilineas let fibonacci=(num)=>{ let a=1,b=1,c=a+b; for (let i=2;i<num;i++){ c=a+b; a=b; b=c; } return c; } console.log(sum(2,3)) function checkEdad(edad,si,no){ let res=""; if(edad>=18){ res=si(); }else{ res=no(); } console.log(res); } checkEdad(10,function(){return "Puedes entrar al casino";},function(){return "No puedes entrar al casino";}); checkEdad(20,()=>"Puedes entrar al casino",()=>"No puedes entrar al casino");
Ejercicio JS
Haced un programa que muestre por consola los números primos del 2 al 100.
Probemos los bucles
Hagamos con JS algunos ejercicios típicos:
Fibonacci hasta el término 20
Tabla de multiplicar del 7
Probemos el if… y todo lo demás
Cread un script de JS que nos pida (con prompt) la edad al usuario y la altura en centímetros
Si la edad es mayor de 16 o la altura mayor de 150 que muestre un mensaje que diga ‘Puedes pasar’
¿Qué pasa si el usuario no pone ningún valor (ya sabemos como son)?
Ejercicio repaso final CSS y HTML
Ejercicio bootstrap
Cread una página que tenga:
1.- Una barra de navegación con Inicio nosotros productos servicios contacto
2.- Un slider de cuatro fotos con caption (las que queráis)
3.- Una barra con diferentes secciones: Nacional Internacional Destacados
Que al pinchar en cada una nos muestre una información de cada apartado. Cada apartado tendrá una foto a la izquierda y un texto a la derecha.
Bootstrap
Para empezar, nuestra amiga w3schools:
https://www.w3schools.com/bootstrap4/default.asp
https://www.w3schools.com/bootstrap5/index.php
https://www.tutorialrepublic.com/twitter-bootstrap-tutorial/bootstrap-get-started.php
Ahí encontraremos la explicación de todos los elementos de bootstrap muy bien explicados, pero también podemos ir a las fuentes:
https://getbootstrap.com/docs/4.6/getting-started/introduction/
https://getbootstrap.com/docs/5.0/getting-started/introduction/
Novedades de 5.0 respecto a 4:
https://www.pedrodelanube.com/bootstrap-5-que-hay-de-nuevo/
Aquí encontraremos diferentes bootstraps tuneados:
Y aquí templates listos para usar:
https://colorlib.com/wp/free-bootstrap-templates/
En trifulcas hay código de muchos ejemplos:
https://trifulcas.com/ejemplos-bootstrap/
https://trifulcas.com/ejemplo-bootstrap-2/
https://codepen.io/ajaypatelaj/pen/prHjD
Un análisis exhaustivo del grid de bootstrap:
https://trifulcas.com/analisis-del-grid-de-bootstrap/
Ejemplos del grid de bootstrap:
https://coreui.io/docs/layout/grid/
https://www.tutorialrepublic.com/twitter-bootstrap-tutorial/bootstrap-grid-system.php
Repaso final plantilla
1.- Comprobad que todo lo que se ha pedido esté.
2.- Que el suscribirse desaparezca solo o al darle un botón de cerrar.
3.- EL tema responsive, que los anchos de las imágenes queden bien y no pequeños y montados
4.- Poned un menú hamburguesa para el menú (lo tenéis en el apartado de media querie o podéis buscar uno propio)
5.- Si a alguien le da tiempo, sed creativos y libres.