From ba0098e5403a373972fbc7d87529604c58d1a7e7 Mon Sep 17 00:00:00 2001 From: Juanse Marquez Date: Mon, 1 Jun 2026 18:48:41 -0300 Subject: [PATCH] =?UTF-8?q?Soluci=C3=B3n=20ejercicio=205?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ejercicio5/ejercicio5.js | 38 +++++++++++++++++++++++++++++++++++++- ejercicio5/index.html | 2 ++ 2 files changed, 39 insertions(+), 1 deletion(-) diff --git a/ejercicio5/ejercicio5.js b/ejercicio5/ejercicio5.js index 6ce9e92..f5c293f 100644 --- a/ejercicio5/ejercicio5.js +++ b/ejercicio5/ejercicio5.js @@ -1 +1,37 @@ -// Agregar aquí el código javascript +const paises = [ + "Argentina", "Brasil", "Chile", "Colombia", "Ecuador", + "México", "Paraguay", "Perú", "Uruguay", "Venezuela" +]; + +const campo = document.querySelector("#filtro"); + +function construirLista(items) { + const lista = document.querySelector("#lista"); + // Limpiamos la lista antes de reconstruirla. + lista.innerHTML = ""; + + for (const pais of items) { + const item = document.createElement("li"); + item.textContent = pais; + lista.appendChild(item); + } +} + +campo.addEventListener("input", () => { + const texto = campo.value.toLowerCase(); + + // Si el campo está vacío, mostramos todos los países. + // Si no, filtramos los que incluyan el texto ingresado. + // toLowerCase() en ambos lados hace la comparación sin distinguir mayúsculas. + if (texto === "") { + construirLista(paises); + } else { + const filtrados = paises.filter(p => p.toLowerCase().includes(texto)); + // Otra forma, con indexOf: + // const filtrados = paises.filter(p => p.toLowerCase().indexOf(texto) > -1); + construirLista(filtrados); + } +}); + +// Mostramos todos los países al cargar la página. +construirLista(paises); diff --git a/ejercicio5/index.html b/ejercicio5/index.html index 51c5f8b..c7f6af2 100644 --- a/ejercicio5/index.html +++ b/ejercicio5/index.html @@ -8,6 +8,8 @@

Ejercicio 5

+ +