diff --git a/01.js b/01.js index 833ee450..d7a93855 100644 --- a/01.js +++ b/01.js @@ -11,7 +11,11 @@ function soloNumeros(array) { // soloNumeros([1, 'Henry', 2]) debe retornar [1, 2] // Tu código aca: - + var array; + var numero; + let filtrados = array.filter(numero => Number.isInteger(numero)); + return filtrados + } // No modifiques nada debajo de esta linea // diff --git a/02.js b/02.js index f7a4836c..ba3b520d 100644 --- a/02.js +++ b/02.js @@ -12,6 +12,20 @@ function stringMasLarga(strings) { // stringMasLarga(['JavaScript', 'HTML', 'CSS']); debe retornar 'JavaScript' // Tu código aca + + var maslarga=""; + var strings + + for (let i = 0; imaslarga.length) { + maslarga=strings[i] + + } + } + + return maslarga + } // No modifiques nada debajo de esta linea // diff --git a/03.js b/03.js index 0819aa30..77fc68ac 100644 --- a/03.js +++ b/03.js @@ -14,7 +14,16 @@ function buscarAmigo(amigos, nombre) { // buscarAmigo(amigos, 'toni') debe devolver { nombre: 'toni', edad: 33 }; // Tu código aca: - + var i = 0; + while (i < amigos.length && amigos[i].nombre != nombre) { + i++; + } + if (i < amigos.length) { + return amigos[i]; + } + else { + return null; + } } // No modifiques nada debajo de esta linea // diff --git a/04.js b/04.js index 119670e8..8d735215 100644 --- a/04.js +++ b/04.js @@ -13,6 +13,11 @@ function numeroSimetrico(num) { // numeroSimetrico(11711) devuelve true // Tu código: + var num + return ""+num === (""+num).split("").reverse().join("") + + + } diff --git a/05.js b/05.js index ac66b16f..bd132a17 100644 --- a/05.js +++ b/05.js @@ -14,6 +14,11 @@ function pluck(array, propiedad) { // Pista: es una buena oportunidad para usar map. // Tu código acá: + var a + let pedidoarray = array.map(function(a){ + return a[propiedad] + }); + return pedidoarray; } diff --git a/06-07-08.js b/06-07-08.js index 79cd4178..f5ed5261 100644 --- a/06-07-08.js +++ b/06-07-08.js @@ -11,7 +11,18 @@ function crearClasePersona() { // Inicializar las propiedades de la persona con los valores recibidos como argumento // Tu código aca: - + this.nombre = nombre, + this.edad = edad, + this.hobbies = hobbies, + this.amigos = amigos, + this.persona = function(){ + return{ + nombre: this.nombre, + edad: this.edad, + hobbies: this.hobbies, + amigos: this.amigos, + } + } } addFriend(nombre, edad) { @@ -20,7 +31,8 @@ function crearClasePersona() { // No debe retornar nada. // Tu código aca: - + let amigo = {nombre, edad} + this.amigos.push(amigo); } addHobby(hobby) { @@ -28,7 +40,7 @@ function crearClasePersona() { // No debe retornar nada. // Tu código aca: - + this.hobbies.push(hobby); } getFriends() { // El método 'getFriends' debe retornar un arreglo con sólo los nombres del arreglo de amigos @@ -38,15 +50,20 @@ function crearClasePersona() { // persona.getFriends() debería devolver ['martin', 'toni'] // Tu código aca: - + const transformarObjetoAmigoANombre = ((amigo) => amigo.nombre); + const indexed = this.amigos.map(transformarObjetoAmigoANombre); + return indexed } + + getHobbies() { // El método 'getHobbies' debe retornar un arreglo con los hobbies de la persona // Ej: // persona.getHobbies() debe devolver ['correr', 'dormir', 'nadar'] // Tu código aca: + return this.hobbies } @@ -66,10 +83,9 @@ function crearClasePersona() { // persona.getPromedioEdad() debería devolver 29 ya que (33 + 25) / 2 = 29 // Tu código aca: - - } - }; - + return this.amigos.map(amigo => amigo.edad).reduce((a, b) => a + b) / this.amigos.length + } + } return Persona; } diff --git a/09.js b/09.js index d1e6caab..414d2030 100644 --- a/09.js +++ b/09.js @@ -5,6 +5,41 @@ No comentar la funcion */ function filtrar(funcion) { + var productos = [{ + price: 100, + name: 'tv' + }, { + price: 50, + name: 'phone' + }, { + price: 30, + name: 'lamp' + }]; + + // Definir el método antes de ejecutar + Array.prototype.filtrar = function(cb) { + // Crear el arreglo que se va a devolver + let newArray = []; + // Recorrer elementos actuales + this.forEach(item => { + // Analizar el resultado de la función de retorno o "callback" + if(cb(item)) { + // Si devuelve verdadero, agregar elemento + newArray.push(item); + } + }); + // Devolver arreglo filtrado + return newArray; + }; + + // Ejecutar método de filtro proporcionando función de retorno o "callback" + let filtrado = productos.filtrar(function(p) { + // Incluir solo productos que cumplen esta condición + return p.price >= 50; + }); + + // Mostrar resultado + console.log(filtrado); // Escribi una función filtrar en el prototipo de Arrays, // que recibe una funcion (callback) que devuelve true o false. // filtrar los elementos de ese arreglo en base al resultado de esa funcion diff --git a/README.md b/README.md index e362ad3d..512b5bcc 100644 --- a/README.md +++ b/README.md @@ -145,3 +145,89 @@ Te compartimos un poco de documentación para facilitarte algunas respuestas. ¡
## **💪¡MUCHA SUERTE!👊** + + \ No newline at end of file