diff --git a/clase10.html b/clase10.html
new file mode 100644
index 0000000..f6e3c67
--- /dev/null
+++ b/clase10.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 10
+
+
+
+
+
\ No newline at end of file
diff --git a/clase10.js b/clase10.js
new file mode 100644
index 0000000..f28322e
--- /dev/null
+++ b/clase10.js
@@ -0,0 +1,44 @@
+var francisco = {
+ nombre: 'Francisco',
+ apellido: 'Castillo',
+ edad: 19,
+ ingeniero: true,
+ cocinero: false,
+ cantante: false,
+ dj: false,
+ cm: true
+}
+
+function imprimirSiEsMayorDeEdad(persona){
+ if (persona.edad>=18) {
+ console.log(`${persona.nombre} es mayor de edad`)
+ }else{
+ console.log(`${persona.nombre} no es mayor de edad`)
+ }
+}
+
+function imprimirProfesiones(persona){
+ console.log(`${persona.nombre} es: `)
+ if (persona.ingeniero) {
+ console.log('Ingeniero')
+ }else{
+ console.log('No es ingeniero')
+ }
+ if (persona.cocinero) {
+ console.log('cocinero')
+ }else{
+ console.log('No es cocinero')
+ }
+ if (persona.dj) {
+ console.log('dj')
+ }
+ if (persona.cantante) {
+ console.log('cantante')
+ }
+ if (persona.cm) {
+ console.log('cm')
+ }
+}
+
+imprimirProfesiones(francisco)
+imprimirSiEsMayorDeEdad(francisco)
\ No newline at end of file
diff --git a/clase11.html b/clase11.html
new file mode 100644
index 0000000..0fcd248
--- /dev/null
+++ b/clase11.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 11
+
+
+
+
+
\ No newline at end of file
diff --git a/clase11.js b/clase11.js
new file mode 100644
index 0000000..036f7f6
--- /dev/null
+++ b/clase11.js
@@ -0,0 +1,56 @@
+var francisco = {
+ nombre: 'Francisco',
+ apellido: 'Castillo',
+ edad: 19,
+ ingeniero: true,
+ cocinero: false,
+ cantante: false,
+ dj: false,
+ cm: true
+}
+var juan = {
+ nombre: "Juan",
+ apellido: "Gomez",
+ edad: 14
+}
+
+const MAYORIA_DE_EDAD = 18 //Las constantes deben nombrarse en mayusculas siempre
+
+function esMayorDeEdad(persona){
+ if (persona.edad >= MAYORIA_DE_EDAD) {
+ return persona.edad >= MAYORIA_DE_EDAD
+ }
+}
+function imprimirSiEsMayorDeEdad(persona){
+ if (esMayorDeEdad(persona)) {
+ console.log(`${persona.nombre} es mayor de edad`)
+ }else{
+ console.log(`${persona.nombre} es menor de edad`)
+ }
+}
+
+function imprimirProfesiones(persona){
+ console.log(`${persona.nombre} es: `)
+ if (persona.ingeniero) {
+ console.log('Ingeniero')
+ }else{
+ console.log('No es ingeniero')
+ }
+ if (persona.cocinero) {
+ console.log('cocinero')
+ }else{
+ console.log('No es cocinero')
+ }
+ if (persona.dj) {
+ console.log('dj')
+ }
+ if (persona.cantante) {
+ console.log('cantante')
+ }
+ if (persona.cm) {
+ console.log('cm')
+ }
+}
+
+imprimirProfesiones(francisco)
+imprimirSiEsMayorDeEdad(francisco)
\ No newline at end of file
diff --git a/clase12.html b/clase12.html
new file mode 100644
index 0000000..44701ed
--- /dev/null
+++ b/clase12.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 12
+
+
+
+
+
\ No newline at end of file
diff --git a/clase12.js b/clase12.js
new file mode 100644
index 0000000..74719f0
--- /dev/null
+++ b/clase12.js
@@ -0,0 +1,60 @@
+var francisco = {
+ nombre: 'Francisco',
+ apellido: 'Castillo',
+ edad: 19,
+ ingeniero: true,
+ cocinero: false,
+ cantante: false,
+ dj: false,
+ cm: true
+}
+var juan = {
+ nombre: "Juan",
+ apellido: "Gomez",
+ edad: 14
+}
+
+const MAYORIA_DE_EDAD = 18 //Las constantes deben nombrarse en mayusculas siempre
+
+var esMayorDeEdad = ({ edad }) => edad >= MAYORIA_DE_EDAD
+
+var esMenorDeEdad = ({ edad }) => edad < MAYORIA_DE_EDAD
+
+function imprimirSiEsMayorDeEdad(persona){
+ if (esMayorDeEdad(persona)) {
+ console.log(`${persona.nombre} es mayor de edad`)
+ }
+ if (esMenorDeEdad(persona)) {
+ console.log(`${persona.nombre} es menor de edad`)
+ }
+}
+
+function imprimirProfesiones(persona){
+ console.log(`${persona.nombre} es: `)
+ if (persona.ingeniero) {
+ console.log('Ingeniero')
+ }else{
+ console.log('No es ingeniero')
+ }
+ if (persona.cocinero) {
+ console.log('cocinero')
+ }else{
+ console.log('No es cocinero')
+ }
+ if (persona.dj) {
+ console.log('dj')
+ }
+ if (persona.cantante) {
+ console.log('cantante')
+ }
+ if (persona.cm) {
+ console.log('cm')
+ }
+}
+function permitirAcceso(persona){
+ if (!esMayorDeEdad(persona)) {
+ console.log('ACCESO DENEGADO')
+ }
+}
+imprimirProfesiones(francisco)
+imprimirSiEsMayorDeEdad(francisco)
\ No newline at end of file
diff --git a/clase13.html b/clase13.html
new file mode 100644
index 0000000..14c3a5d
--- /dev/null
+++ b/clase13.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 13
+
+
+
+
+
\ No newline at end of file
diff --git a/clase13.js b/clase13.js
new file mode 100644
index 0000000..acc1133
--- /dev/null
+++ b/clase13.js
@@ -0,0 +1,30 @@
+var francisco = {
+ nombre: 'Francisco',
+ apellido: 'Castillo',
+ edad: 19,
+ peso: 60
+}
+
+console.log(`Al inicio del año ${francisco.nombre} pesa ${francisco.peso} kg`)
+
+const INCREMENTO_PESO = 0.2
+const DIAS_DEL_ANO = 365
+
+const aumentarDePeso = persona => persona.peso += INCREMENTO_PESO
+const disminuirDePeso = persona => persona.peso -= INCREMENTO_PESO
+
+for (var i = 1; i <= DIAS_DEL_ANO; i++) {
+ var random = Math.random()
+
+ if (random < 0.25) {
+
+ aumentarDePeso(francisco)
+
+ } else if (random < 0.5) {
+
+ disminuirDePeso(francisco)
+
+ }
+}
+
+console.log(`Al final del año ${francisco.nombre} pesa ${francisco.peso.toFixed(1)} kg`)
\ No newline at end of file
diff --git a/clase14.html b/clase14.html
new file mode 100644
index 0000000..97b7bf3
--- /dev/null
+++ b/clase14.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 14
+
+
+
+
+
\ No newline at end of file
diff --git a/clase14.js b/clase14.js
new file mode 100644
index 0000000..a53c868
--- /dev/null
+++ b/clase14.js
@@ -0,0 +1,33 @@
+var francisco = {
+ nombre: 'Francisco',
+ apellido: 'Castillo',
+ edad: 19,
+ peso: 60
+}
+
+console.log(`Al inicio del año ${francisco.nombre} pesa ${francisco.peso} kg`)
+
+const INCREMENTO_PESO = 0.3
+const META = francisco.peso - 3
+
+const aumentarDePeso = persona => persona.peso += INCREMENTO_PESO
+const disminuirDePeso = persona => persona.peso -= INCREMENTO_PESO
+const comeMucho = () => Math.random() < 0.3
+const realizaDeporte = () => Math.random() < 0.4
+
+var dias = 0
+
+while(francisco.peso > META) {
+
+ if (comeMucho()) {
+
+ aumentarDePeso(francisco)
+ }
+ if (realizaDeporte()) {
+ disminuirDePeso(francisco)
+ }
+
+ dias += 1
+}
+
+console.log(` ${francisco.nombre} se tomo ${dias} en obtener el peso de ${francisco.peso.toFixed(1)} kg`)
\ No newline at end of file
diff --git a/clase15.html b/clase15.html
new file mode 100644
index 0000000..839d578
--- /dev/null
+++ b/clase15.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 15
+
+
+
+
+
\ No newline at end of file
diff --git a/clase15.js b/clase15.js
new file mode 100644
index 0000000..4bb1a85
--- /dev/null
+++ b/clase15.js
@@ -0,0 +1,13 @@
+var contador = 0
+
+const llueve = () => Math.random() < 0.25
+
+do {
+ contador ++
+} while(!llueve())
+
+if (contador === 1) {
+ console.log(`Fue a ver si llovia ${contador} vez`)
+}else{
+ console.log(`Fue a ver si llovia ${contador} veces`)
+}
diff --git a/clase16.html b/clase16.html
new file mode 100644
index 0000000..60edd8f
--- /dev/null
+++ b/clase16.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 16
+
+
+
+
+
\ No newline at end of file
diff --git a/clase16.js b/clase16.js
new file mode 100644
index 0000000..58e13ec
--- /dev/null
+++ b/clase16.js
@@ -0,0 +1,22 @@
+var signo = prompt('¿Cual es tu signo?')
+
+signoFixed = signo.charAt(0).toUpperCase() + signo.substr(1, signo.length)
+console.log(signoFixed)
+
+switch (signoFixed) {
+ case 'Acuario':
+ console.log(`Hola ${signoFixed}`)
+ break
+ case 'Cancer':
+ console.log(`Hola ${signoFixed}`)
+ break
+ case 'Capricornio':
+ console.log(`Hola ${signoFixed}`)
+ break
+ case 'Geminis':
+ console.log(`Hola ${signoFixed}`)
+ break
+ default:
+ console.log('No es un signo valido')
+ break
+}
\ No newline at end of file
diff --git a/clase17.html b/clase17.html
new file mode 100644
index 0000000..178069c
--- /dev/null
+++ b/clase17.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 17
+
+
+
+
+
\ No newline at end of file
diff --git a/clase17.js b/clase17.js
new file mode 100644
index 0000000..41f9220
--- /dev/null
+++ b/clase17.js
@@ -0,0 +1,42 @@
+var sacha = {
+ nombre: 'Sacha',
+ apellido: 'Lifszyc',
+ altura: 1.72
+}
+
+var alan = {
+ nombre: 'Alan',
+ apellido: 'Perez',
+ altura: 1.86
+}
+
+var martin = {
+ nombre: 'Martin',
+ apellido: 'Gomez',
+ altura: 1.85
+}
+
+var dario = {
+ nombre: 'Dario',
+ apellido: 'Juarez',
+ altura: 1.71
+}
+
+var vicky = {
+ nombre: 'Vicky',
+ apellido: 'Zapata',
+ altura: 1.56
+}
+
+var paula = {
+ nombre: 'Paula',
+ apellido: 'Barros',
+ altura: 1.76
+}
+
+var personas = [sacha, alan, martin, dario, vicky, paula]
+
+for (var i = 0; i < personas.length; i++) {
+ var persona = personas[i]
+ console.log(`${persona.nombre} mide ${persona.altura} mts`)
+}
\ No newline at end of file
diff --git a/clase18.html b/clase18.html
new file mode 100644
index 0000000..60c8833
--- /dev/null
+++ b/clase18.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 18
+
+
+
+
+
\ No newline at end of file
diff --git a/clase18.js b/clase18.js
new file mode 100644
index 0000000..a10e9cf
--- /dev/null
+++ b/clase18.js
@@ -0,0 +1,47 @@
+var sacha = {
+ nombre: 'Sacha',
+ apellido: 'Lifszyc',
+ altura: 1.72
+}
+
+var alan = {
+ nombre: 'Alan',
+ apellido: 'Perez',
+ altura: 1.86
+}
+
+var martin = {
+ nombre: 'Martin',
+ apellido: 'Gomez',
+ altura: 1.85
+}
+
+var dario = {
+ nombre: 'Dario',
+ apellido: 'Juarez',
+ altura: 1.71
+}
+
+var vicky = {
+ nombre: 'Vicky',
+ apellido: 'Zapata',
+ altura: 1.56
+}
+
+var paula = {
+ nombre: 'Paula',
+ apellido: 'Barros',
+ altura: 1.76
+}
+
+const esAlta = ({altura}) => altura > 1.80 //Desglosando el objeto dentro del arrow function
+
+const esEnana = ({altura}) => altura < 1.80
+
+var personas = [sacha, alan, martin, dario, vicky, paula]
+
+var personasAltas = personas.filter(esAlta)
+var personasEnanas = personas.filter(esEnana)
+
+console.log(personasAltas)
+console.log(personasEnanas)
\ No newline at end of file
diff --git a/clase19.html b/clase19.html
new file mode 100644
index 0000000..5211003
--- /dev/null
+++ b/clase19.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 19
+
+
+
+
+
\ No newline at end of file
diff --git a/clase19.js b/clase19.js
new file mode 100644
index 0000000..c42597b
--- /dev/null
+++ b/clase19.js
@@ -0,0 +1,47 @@
+var sacha = {
+ nombre: 'Sacha',
+ apellido: 'Lifszyc',
+ altura: 1.72
+}
+
+var alan = {
+ nombre: 'Alan',
+ apellido: 'Perez',
+ altura: 1.86
+}
+
+var martin = {
+ nombre: 'Martin',
+ apellido: 'Gomez',
+ altura: 1.85
+}
+
+var dario = {
+ nombre: 'Dario',
+ apellido: 'Juarez',
+ altura: 1.71
+}
+
+var vicky = {
+ nombre: 'Vicky',
+ apellido: 'Zapata',
+ altura: 1.56
+}
+
+var paula = {
+ nombre: 'Paula',
+ apellido: 'Barros',
+ altura: 1.76
+}
+
+var personas = [sacha, alan, martin, dario, vicky, paula]
+
+const pasarAlturaACms = persona =>({
+ ...persona,
+ altura: persona.altura * 100 //Cambia a centimetros
+
+})
+
+var personasCms = personas.map(pasarAlturaACms) //Modifica el array original
+
+console.log(personasCms)
\ No newline at end of file
diff --git a/clase2.js b/clase2.js
index dec5467..aabf5d4 100644
--- a/clase2.js
+++ b/clase2.js
@@ -9,3 +9,5 @@ var cantidadDeLetrasDelNombre = nombre.length
var nombreCompleto = `${nombre} ${apellido.toUpperCase()}`
var str = nombre.substr(1, 2)
+var ultimoCaracter = cantidadDeLetrasDelNombre - 1
+var ultimaLetra = nombre.charAt(ultimoCaracter)
diff --git a/clase20.html b/clase20.html
new file mode 100644
index 0000000..b16e702
--- /dev/null
+++ b/clase20.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 20
+
+
+
+
+
\ No newline at end of file
diff --git a/clase20.js b/clase20.js
new file mode 100644
index 0000000..2e6e646
--- /dev/null
+++ b/clase20.js
@@ -0,0 +1,57 @@
+var sacha = {
+ nombre: 'Sacha',
+ apellido: 'Lifszyc',
+ altura: 1.72,
+ cantidadDeLibros: 130
+}
+
+var alan = {
+ nombre: 'Alan',
+ apellido: 'Perez',
+ altura: 1.86,
+ cantidadDeLibros: 200
+}
+
+var martin = {
+ nombre: 'Martin',
+ apellido: 'Gomez',
+ altura: 1.85,
+ cantidadDeLibros: 130
+}
+
+var dario = {
+ nombre: 'Dario',
+ apellido: 'Juarez',
+ altura: 1.71,
+ cantidadDeLibros: 12
+}
+
+var vicky = {
+ nombre: 'Vicky',
+ apellido: 'Zapata',
+ altura: 1.56,
+ cantidadDeLibros: 170
+}
+
+var paula = {
+ nombre: 'Paula',
+ apellido: 'Barros',
+ altura: 1.76,
+ cantidadDeLibros: 100
+}
+
+var personas = [sacha, alan, martin, dario, vicky, paula]
+
+const pasarAlturaACms = persona =>({
+ ...persona,
+ altura: persona.altura * 100 //Cambia a centimetros
+
+})
+
+var personasCms = personas.map(pasarAlturaACms) //Modifica el array original
+
+const reducer = (acum, {cantidadDeLibros}) => cantidadDeLibros + acum
+
+var totalDeLibros = personas.reduce(reducer, 0) //Recibe la función y a cantidad inicial del acumulador
+console.log(personasCms)
+console.log(`La cantidad total de libros es ${totalDeLibros}`)
\ No newline at end of file
diff --git a/clase21.html b/clase21.html
new file mode 100644
index 0000000..ecd43d1
--- /dev/null
+++ b/clase21.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 21
+
+
+
+
+
\ No newline at end of file
diff --git a/clase21.js b/clase21.js
new file mode 100644
index 0000000..f742e99
--- /dev/null
+++ b/clase21.js
@@ -0,0 +1,27 @@
+function Persona(nombre, apellido, altura){
+ this.nombre = nombre
+ this.apellido = apellido
+ this.altura = altura
+
+}
+
+Persona.prototype.saludar = function(){
+ console.log(`Hola, me llamo ${this.nombre} ${this.apellido}`)
+}
+
+Persona.prototype.soyAlto = function(){
+
+ if (this.altura > 1.8) {
+ console.log(`Yo, ${this.nombre} soy alto`)
+ }else{
+ console.log(`Yo, ${this.nombre} no soy alto`)
+ }
+}
+
+var francisco = new Persona('Francisco', 'Castillo', 1.7)
+var javi = new Persona('Javier', 'Castillo', 1.9)
+
+francisco.saludar()
+francisco.soyAlto()
+javi.saludar()
+javi.soyAlto()
\ No newline at end of file
diff --git a/clase22.html b/clase22.html
new file mode 100644
index 0000000..d98f1aa
--- /dev/null
+++ b/clase22.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 22
+
+
+
+
+
\ No newline at end of file
diff --git a/clase22.js b/clase22.js
new file mode 100644
index 0000000..c242139
--- /dev/null
+++ b/clase22.js
@@ -0,0 +1,27 @@
+function Persona(nombre, apellido, altura){
+ this.nombre = nombre
+ this.apellido = apellido
+ this.altura = altura
+
+}
+
+Persona.prototype.saludar = function(){
+ console.log(`Hola, me llamo ${this.nombre} ${this.apellido}`)
+}
+
+Persona.prototype.soyAlto = function(){
+
+ if (this.altura > 1.8) {
+ console.log(`Yo, ${this.nombre} soy alto`) //Las funciones deben estar antes de la creación de los objetos
+ }else{
+ console.log(`Yo, ${this.nombre} no soy alto`)
+ }
+}
+
+var francisco = new Persona('Francisco', 'Castillo', 1.7)
+var javi = new Persona('Javier', 'Castillo', 1.9)
+
+francisco.saludar()
+francisco.soyAlto()
+javi.saludar()
+javi.soyAlto()
\ No newline at end of file
diff --git a/clase23.html b/clase23.html
new file mode 100644
index 0000000..defd70d
--- /dev/null
+++ b/clase23.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 23
+
+
+
+
+
\ No newline at end of file
diff --git a/clase23.js b/clase23.js
new file mode 100644
index 0000000..ef3825e
--- /dev/null
+++ b/clase23.js
@@ -0,0 +1,32 @@
+function Persona(nombre, apellido, altura){
+ this.nombre = nombre
+ this.apellido = apellido
+ this.altura = altura
+
+}
+
+Persona.prototype.saludar = function(){
+ console.log(`Hola, me llamo ${this.nombre} ${this.apellido}`)
+}
+
+Persona.prototype.soyAlto = () => {
+ debugger
+ return this.altura > 1.8
+}
+
+Persona.prototype.imprimirSiSoyAlto = function(){
+
+ if (this.altura > 1.8) {
+ console.log(`Yo, ${this.nombre} soy alto`) //Las funciones deben estar antes de la creación de los objetos
+ }else{
+ console.log(`Yo, ${this.nombre} no soy alto`)
+ }
+}
+
+var francisco = new Persona('Francisco', 'Castillo', 1.7)
+var javi = new Persona('Javier', 'Castillo', 1.9)
+
+francisco.saludar()
+francisco.imprimirSiSoyAlto()
+javi.saludar()
+javi.imprimirSiSoyAlto()
\ No newline at end of file
diff --git a/clase24.html b/clase24.html
new file mode 100644
index 0000000..09aa0c7
--- /dev/null
+++ b/clase24.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 24
+
+
+
+
+
\ No newline at end of file
diff --git a/clase24.js b/clase24.js
new file mode 100644
index 0000000..e8677ee
--- /dev/null
+++ b/clase24.js
@@ -0,0 +1,47 @@
+function heredaDe(prototipoHijo, prototipoPadre){
+ var fn = function () {}
+ fn.prototype = prototipoPadre.prototype
+ prototipoHijo.prototype = new fn
+ prototipoHijo.prototype.constructor = prototipoHijo
+}
+function Persona(nombre, apellido, altura){
+ this.nombre = nombre
+ this.apellido = apellido
+ this.altura = altura
+
+}
+
+Persona.prototype.saludar = function(){
+ console.log(`Hola, me llamo ${this.nombre} ${this.apellido}`)
+}
+
+Persona.prototype.soyAlto = () => {
+ debugger
+ return this.altura > 1.8
+}
+
+Persona.prototype.imprimirSiSoyAlto = function(){
+
+ if (this.altura > 1.8) {
+ console.log(`Yo, ${this.nombre} soy alto`) //Las funciones deben estar antes de la creación de los objetos
+ }else{
+ console.log(`Yo, ${this.nombre} no soy alto`)
+ }
+}
+
+function Desarrollador (nombre, apellido) {
+ this.nombre = nombre
+ this.apellido = apellido
+}
+
+heredaDe(Desarrollador, Persona)
+
+Desarrollador.prototype.saludar = function () {
+ console.log(`Hola, me llamo ${this.nombre} y soy desarrollador`)
+}
+
+var francisco = new Persona('Francisco', 'Castillo', 1.7)
+var javi = new Persona('Javier', 'Castillo', 1.9)
+
+francisco.saludar()
+francisco.imprimirSiSoyAlto()
diff --git a/clase25.html b/clase25.html
new file mode 100644
index 0000000..22ea3c5
--- /dev/null
+++ b/clase25.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 25
+
+
+
+
+
\ No newline at end of file
diff --git a/clase25.js b/clase25.js
new file mode 100644
index 0000000..3e15cb8
--- /dev/null
+++ b/clase25.js
@@ -0,0 +1,37 @@
+class Persona{
+ constructor(nombre, apellido, altura){
+ this.nombre = nombre
+ this.apellido = apellido
+ this.altura = altura
+ }
+ saludar () {
+ console.log(`Hola, me llamo ${this.nombre} ${this.apellido}`)
+ }
+ soyAlto () {
+ return this.altura > 1.8
+ }
+ imprimirSiSoyAlto () {
+ if (this.altura > 1.8) {
+ console.log(`Yo, ${this.nombre} soy alto`) //Las funciones deben estar antes de la creación de los objetos
+ }else{
+ console.log(`Yo, ${this.nombre} no soy alto`)
+ }
+ }
+
+}
+
+class Desarrollador extends Persona {
+ constructor(nombre, apellido, altura){
+ super(nombre, apellido, altura)
+ }
+ saludar () {
+ console.log(`Hola, me llamo ${this.nombre} y soy desarrollador`)
+ }
+
+}
+
+var francisco = new Persona('Francisco', 'Castillo', 1.7)
+var javi = new Persona('Javier', 'Castillo', 1.9)
+
+francisco.saludar()
+francisco.imprimirSiSoyAlto()
diff --git a/clase26.html b/clase26.html
new file mode 100644
index 0000000..f3e69ee
--- /dev/null
+++ b/clase26.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 26
+
+
+
+
+
\ No newline at end of file
diff --git a/clase26.js b/clase26.js
new file mode 100644
index 0000000..8b03056
--- /dev/null
+++ b/clase26.js
@@ -0,0 +1,55 @@
+class Persona{
+ constructor(nombre, apellido, altura){
+ this.nombre = nombre
+ this.apellido = apellido
+ this.altura = altura
+ }
+ saludar (fn) {
+ var {nombre, apellido} = this
+ console.log(`Hola, me llamo ${nombre} ${apellido}`)
+ if (fn) {
+ fn(nombre, apellido)
+ }
+ }
+ soyAlto () {
+ return this.altura > 1.8
+ }
+ imprimirSiSoyAlto () {
+ if (this.altura > 1.8) {
+ console.log(`Yo, ${this.nombre} soy alto`) //Las funciones deben estar antes de la creación de los objetos
+ }else{
+ console.log(`Yo, ${this.nombre} no soy alto`)
+ }
+ }
+
+}
+
+class Desarrollador extends Persona {
+ constructor(nombre, apellido, altura){
+ super(nombre, apellido, altura)
+ }
+ saludar (fn) {
+ // var nombre = this.nombre
+ // var apellido = this.apellido
+ var {nombre, apellido} = this
+ console.log(`Hola, me llamo ${nombre} y soy desarrollador`)
+ if (fn) {
+ fn(nombre, apellido, true)
+ }
+
+ }
+
+}
+
+function responderSaludo(nombre, apellido, esDev) {
+ console.log(`Buen dia ${nombre} ${apellido}`)
+ if (esDev) {
+ console.log(`No sabia que eras Dev`)
+ }
+}
+var francisco = new Persona('Francisco', 'Castillo', 1.7)
+var javi = new Desarrollador('Javier', 'Castillo', 1.9)
+
+francisco.saludar(responderSaludo)
+javi.saludar(responderSaludo)
+
diff --git a/clase27.html b/clase27.html
new file mode 100644
index 0000000..38b97fe
--- /dev/null
+++ b/clase27.html
@@ -0,0 +1,13 @@
+
+
+
+ Clase 27
+
+
+
+
+
+
\ No newline at end of file
diff --git a/clase27.js b/clase27.js
new file mode 100644
index 0000000..313b1cf
--- /dev/null
+++ b/clase27.js
@@ -0,0 +1,20 @@
+const API_URL = 'https://swapi.co/api/'
+const PEOPLE_URL = 'people/:id'
+
+const opts = { crossDomain: true }
+
+const onPeopleResponse = function (persona){
+ console.log(`Hola soy ${persona.name}`)
+}
+function obtenerPersonaje(id) {
+ const url = `${API_URL}${PEOPLE_URL.replace(':id', id)}`
+ $.get(url, opts, onPeopleResponse)
+
+}
+
+for (var i = 1; i < 10; i++) {
+ obtenerPersonaje(i)
+}
+
+
+
diff --git a/clase28.html b/clase28.html
new file mode 100644
index 0000000..5c25866
--- /dev/null
+++ b/clase28.html
@@ -0,0 +1,13 @@
+
+
+
+ Clase 28
+
+
+
+
+
+
\ No newline at end of file
diff --git a/clase28.js b/clase28.js
new file mode 100644
index 0000000..2f98e71
--- /dev/null
+++ b/clase28.js
@@ -0,0 +1,21 @@
+const API_URL = 'https://swapi.co/api/'
+const PEOPLE_URL = 'people/:id'
+
+const opts = { crossDomain: true }
+
+function obtenerPersonaje(id, callback) {
+ const url = `${API_URL}${PEOPLE_URL.replace(':id', id)}`
+ $.get(url, opts, function (persona) {
+ console.log(`Hola soy ${persona.name}`)
+ if (callback) {
+ callback()
+ }
+ })
+
+}
+
+obtenerPersonaje(1, function (){
+ obtenerPersonaje(2, function (){
+ obtenerPersonaje(3)
+ })
+})
diff --git a/clase29.html b/clase29.html
new file mode 100644
index 0000000..8fca350
--- /dev/null
+++ b/clase29.html
@@ -0,0 +1,13 @@
+
+
+
+ Clase 29
+
+
+
+
+
+
\ No newline at end of file
diff --git a/clase29.js b/clase29.js
new file mode 100644
index 0000000..a23695e
--- /dev/null
+++ b/clase29.js
@@ -0,0 +1,24 @@
+const API_URL = 'https://swapi.co/api/'
+const PEOPLE_URL = 'people/:id'
+
+const opts = { crossDomain: true }
+
+function obtenerPersonaje(id, callback) {
+ const url = `${API_URL}${PEOPLE_URL.replace(':id', id)}`
+ $
+ .get(url, opts, callback)
+ .fail( () => {
+ console.log(`Sucedio un error. No se pudo obtener el personaje ${id}`)
+ })
+
+}
+
+obtenerPersonaje(1, function (personaje){
+ console.log(`Hola soy ${personaje.name}`)
+ obtenerPersonaje(2, function (personaje){
+ console.log(`Hola soy ${personaje.name}`)
+ obtenerPersonaje(3, function (personaje){
+ console.log(`Hola soy ${personaje.name}`)
+ })
+ })
+})
\ No newline at end of file
diff --git a/clase3.html b/clase3.html
new file mode 100644
index 0000000..b5b1a52
--- /dev/null
+++ b/clase3.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 3
+
+
+
+
+
\ No newline at end of file
diff --git a/clase3.js b/clase3.js
new file mode 100644
index 0000000..b8bd999
--- /dev/null
+++ b/clase3.js
@@ -0,0 +1,24 @@
+var edad = 19
+
+edad += 1
+
+var peso = 70
+
+peso -= 2
+
+var sandwich = 1
+
+peso += sandwich
+
+var jugarAlFutbol = 3
+
+peso -= jugarAlFutbol
+
+var precioDeVino = 200.3
+
+var total = Math.round(precioDeVino * 100 * 3)/100
+
+
+
+
+
diff --git a/clase30.html b/clase30.html
new file mode 100644
index 0000000..3c0ea7b
--- /dev/null
+++ b/clase30.html
@@ -0,0 +1,13 @@
+
+
+
+ Clase 30
+
+
+
+
+
+
\ No newline at end of file
diff --git a/clase30.js b/clase30.js
new file mode 100644
index 0000000..23c3ca2
--- /dev/null
+++ b/clase30.js
@@ -0,0 +1,24 @@
+const API_URL = 'https://swapi.co/api/'
+const PEOPLE_URL = 'people/:id'
+
+const opts = { crossDomain: true }
+
+function obtenerPersonaje(id) {
+ return new Promise((resolve, reject) => {
+ const url = `${API_URL}${PEOPLE_URL.replace(':id', id)}`
+ $
+ .get(url, opts, function (data) {
+ resolve(data)
+ })
+ .fail(() => reject(id))
+ })
+ }
+function onError(id){
+ console.log(`Sucedio un error al obtener el personaje ${personaje.id}`)
+}
+
+obtenerPersonaje(1)
+ .then(function(personaje){
+ console.log(`El personaje 1 es ${personaje.name}`)
+ })
+ .catch(onError)
\ No newline at end of file
diff --git a/clase31.html b/clase31.html
new file mode 100644
index 0000000..cf63147
--- /dev/null
+++ b/clase31.html
@@ -0,0 +1,13 @@
+
+
+
+ Clase 31
+
+
+
+
+
+
\ No newline at end of file
diff --git a/clase31.js b/clase31.js
new file mode 100644
index 0000000..cdb5d03
--- /dev/null
+++ b/clase31.js
@@ -0,0 +1,32 @@
+const API_URL = 'https://swapi.co/api/'
+const PEOPLE_URL = 'people/:id'
+
+const opts = { crossDomain: true }
+
+function obtenerPersonaje(id) {
+ return new Promise((resolve, reject) => {
+ const url = `${API_URL}${PEOPLE_URL.replace(':id', id)}`
+ $
+ .get(url, opts, function (data) {
+ resolve(data)
+ })
+ .fail(() => reject(id))
+ })
+ }
+function onError(id){
+ console.log(`Sucedio un error al obtener el personaje ${personaje.id}`)
+}
+
+obtenerPersonaje(1)
+ .then(personaje1 => {
+ console.log(`El personaje 1 es ${personaje1.name}`)
+ return obtenerPersonaje(2)
+ })
+ .then(personaje2 => {
+ console.log(`El personaje 2 es ${personaje2.name}`)
+ return obtenerPersonaje(3)
+ })
+ .then(personaje3 => {
+ console.log(`El personaje 3 es ${personaje3.name}`)
+ })
+ .catch(onError)
\ No newline at end of file
diff --git a/clase32.html b/clase32.html
new file mode 100644
index 0000000..28dd0b9
--- /dev/null
+++ b/clase32.html
@@ -0,0 +1,13 @@
+
+
+
+ Clase 32
+
+
+
+
+
+
\ No newline at end of file
diff --git a/clase32.js b/clase32.js
new file mode 100644
index 0000000..a518aa6
--- /dev/null
+++ b/clase32.js
@@ -0,0 +1,41 @@
+const API_URL = 'https://swapi.co/api/'
+const PEOPLE_URL = 'people/:id'
+
+const opts = { crossDomain: true }
+
+function obtenerPersonaje(id) {
+ return new Promise((resolve, reject) => {
+ const url = `${API_URL}${PEOPLE_URL.replace(':id', id)}`
+ $
+ .get(url, opts, function (data) {
+ resolve(data)
+ })
+ .fail(() => reject(id))
+ })
+ }
+function onError(id){
+ console.log(`Sucedio un error al obtener el personaje ${personaje.id}`)
+}
+
+var ids = [1, 2, 3, 4, 5, 6, 7]
+
+var promesas = ids.map( id => obtenerPersonaje(id))
+
+Promise
+ .all(promesas)
+ .then(personajes => console.log(personajes))
+ .catch(onError)
+
+// obtenerPersonaje(1)
+// .then(personaje1 => {
+// console.log(`El personaje 1 es ${personaje1.name}`)
+// return obtenerPersonaje(2)
+// })
+// .then(personaje2 => {
+// console.log(`El personaje 2 es ${personaje2.name}`)
+// return obtenerPersonaje(3)
+// })
+// .then(personaje3 => {
+// console.log(`El personaje 3 es ${personaje3.name}`)
+// })
+// .catch(onError)
\ No newline at end of file
diff --git a/clase33.html b/clase33.html
new file mode 100644
index 0000000..66f9449
--- /dev/null
+++ b/clase33.html
@@ -0,0 +1,13 @@
+
+
+
+ Clase 33
+
+
+
+
+
+
\ No newline at end of file
diff --git a/clase33.js b/clase33.js
new file mode 100644
index 0000000..0335730
--- /dev/null
+++ b/clase33.js
@@ -0,0 +1,31 @@
+const API_URL = 'https://swapi.co/api/'
+const PEOPLE_URL = 'people/:id'
+
+const opts = { crossDomain: true }
+
+function obtenerPersonaje(id) {
+ return new Promise((resolve, reject) => {
+ const url = `${API_URL}${PEOPLE_URL.replace(':id', id)}`
+ $
+ .get(url, opts, function (data) {
+ resolve(data)
+ })
+ .fail(() => reject(id))
+ })
+ }
+function onError(id){
+ console.log(`Sucedio un error al obtener el personaje ${personaje.id}`)
+}
+async function obtenerPersonajes() {
+ var ids = [1, 2, 3, 4, 5, 6, 7]
+ var promesas = ids.map( id => obtenerPersonaje(id))
+ try {
+ var personajes = await Promise.all(promesas)
+ console.log(personajes)
+ } catch (id){
+ onError(id)
+ }
+}
+
+obtenerPersonajes()
+
diff --git a/clase34.html b/clase34.html
new file mode 100644
index 0000000..2792bf7
--- /dev/null
+++ b/clase34.html
@@ -0,0 +1,226 @@
+
+
+
+
+ Simon Dice
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/clase34.js b/clase34.js
new file mode 100644
index 0000000..e69de29
diff --git a/clase4.html b/clase4.html
new file mode 100644
index 0000000..d702e1d
--- /dev/null
+++ b/clase4.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 4
+
+
+
+
+
\ No newline at end of file
diff --git a/clase4.js b/clase4.js
new file mode 100644
index 0000000..63d9d98
--- /dev/null
+++ b/clase4.js
@@ -0,0 +1,12 @@
+var nombre = 'Francisco', edad = 19
+
+function imprimirEdad(n, e){
+ console.log(`${n} tiene ${e} años`)
+
+}
+imprimirEdad(nombre, edad)
+
+imprimirEdad('Jiulli', 25)
+
+imprimirEdad('Javi', 15)
+
diff --git a/clase5.html b/clase5.html
new file mode 100644
index 0000000..c56e5e5
--- /dev/null
+++ b/clase5.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 5
+
+
+
+
+
\ No newline at end of file
diff --git a/clase5.js b/clase5.js
new file mode 100644
index 0000000..a7e624c
--- /dev/null
+++ b/clase5.js
@@ -0,0 +1,8 @@
+var nombre = 'Francisco'
+
+function imprimirNombreEnMayusculas(nombre){
+ nombre = nombre.toUpperCase()
+ console.log(nombre)
+}
+
+imprimirNombreEnMayusculas(nombre)
\ No newline at end of file
diff --git a/clase6.html b/clase6.html
new file mode 100644
index 0000000..e52c9a9
--- /dev/null
+++ b/clase6.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 6
+
+
+
+
+
\ No newline at end of file
diff --git a/clase6.js b/clase6.js
new file mode 100644
index 0000000..0f2a523
--- /dev/null
+++ b/clase6.js
@@ -0,0 +1,18 @@
+var francisco = {
+ nombre: 'Francisco',
+ apellido: 'Castillo',
+ edad: 19
+}
+var javi = {
+ nombre: 'Javier',
+ apellido: 'Castillo',
+ edad: 16
+}
+
+function imprimirNombreEnMayusculas({nombre}){ //solo se pide el atributo que se necesita
+ console.log(nombre.toUpperCase())
+}
+
+imprimirNombreEnMayusculas(francisco)
+imprimirNombreEnMayusculas(javi)
+imprimirNombreEnMayusculas({nombre:'Pedro'})
\ No newline at end of file
diff --git a/clase7.html b/clase7.html
new file mode 100644
index 0000000..6684bc1
--- /dev/null
+++ b/clase7.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 7
+
+
+
+
+
\ No newline at end of file
diff --git a/clase7.js b/clase7.js
new file mode 100644
index 0000000..cee1161
--- /dev/null
+++ b/clase7.js
@@ -0,0 +1,20 @@
+var francisco = {
+ nombre: 'Francisco',
+ apellido: 'Castillo',
+ edad: 19
+}
+var javi = {
+ nombre: 'Javier',
+ apellido: 'Castillo',
+ edad: 16
+}
+
+function imprimirNombreEnMayusculas(persona){
+ var { nombre } = persona
+ var { edad } = persona
+ console.log(`Hola me llamo ${nombre} y tengo ${edad} años`) //Interpolando variables
+}
+
+imprimirNombreEnMayusculas(francisco)
+imprimirNombreEnMayusculas(javi)
+imprimirNombreEnMayusculas({nombre:'Pedro', edad: 20})
\ No newline at end of file
diff --git a/clase8.html b/clase8.html
new file mode 100644
index 0000000..aa32b62
--- /dev/null
+++ b/clase8.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 8
+
+
+
+
+
\ No newline at end of file
diff --git a/clase8.js b/clase8.js
new file mode 100644
index 0000000..a4324ad
--- /dev/null
+++ b/clase8.js
@@ -0,0 +1,28 @@
+var francisco = {
+ nombre: 'Francisco',
+ apellido: 'Castillo',
+ edad: 19
+}
+var javi = {
+ nombre: 'Javier',
+ apellido: 'Castillo',
+ edad: 16
+}
+
+function imprimirNombreEnMayusculas(persona){
+ var { nombre } = persona
+ var { edad } = persona
+ console.log(`Hola me llamo ${nombre} y tengo ${edad} años`) //Interpolando variables
+}
+
+imprimirNombreEnMayusculas(francisco)
+imprimirNombreEnMayusculas(javi)
+imprimirNombreEnMayusculas({nombre:'Pedro', edad: 20})
+
+function cumpleanos(persona){
+ return {
+ ...persona,
+ edad: persona.edad + 1 //crea un nuevo objeto copiando el anterior y agregandole la edad que se especifica
+ }
+}
+
diff --git a/clase9.html b/clase9.html
new file mode 100644
index 0000000..048b6e0
--- /dev/null
+++ b/clase9.html
@@ -0,0 +1,9 @@
+
+
+
+ Clase 9
+
+
+
+
+
\ No newline at end of file
diff --git a/clase9.js b/clase9.js
new file mode 100644
index 0000000..1851b7d
--- /dev/null
+++ b/clase9.js
@@ -0,0 +1,11 @@
+var x = 4, y = '4'
+
+
+var francisco = {
+ nombre: 'Francisco'
+}
+
+var otraPersona = {
+ ...francisco //arroja false porque es un nuevo objeto
+}
+var otraPersona = francisco //arroja true pero si se modifica otraPersona tambien se modifica francisco