Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Desafío: "Hora de practicar"

Comparto mi código JS

let titulo = document.querySelector('h1');
titulo.innerHTML = "Hora del desafío";

function botonConsola(){
    alert("El botón \"Console\" fue clicado.");  
}

function titleCase(str){
    return str
        .toLowerCase()
        .split(" ")
        .map((word) => word.charAt(0).toUpperCase() + word.slice(1))
        .join(" ");
}

function botonPrompt(){
    while (true){
        let nombreCiudad = prompt("Ingresa el nombre de una ciudad de Brasil: ");
        
        if(nombreCiudad === null){
            break;
        }

        if (/^[a-zA-ZáéíóúÁÉÍÓÚ\s]+$/.test(nombreCiudad)){
            console.log("Nombre de ciudad válido.",nombreCiudad);
            nombreCiudad = titleCase(nombreCiudad);
            alert(`Estuve en ${nombreCiudad} y me acordé de tí.`)
            break;
        }else{
            alert("Nombre de ciudad inválido, por favor ingresa solo letras y espacios.");
        }
    }
}

function botonAlerta(){
    alert("Yo amo JS");
}

function botonSuma(){
    let numero1;
    let numero2;

    while(isNaN(numero1)){
        numero1 = parseFloat(prompt("Ingrese el primer número: "));
        if(isNaN(numero1)){
            alert("Valor ingresado inválido, ingrese solo números.");
        }
    }

    while(isNaN(numero2)){
        numero2 = parseFloat(prompt("Ingrese el segundo número: "));
        if(isNaN(numero2)){
            alert("Valor ingresado inválido, ingrese solo números.");
        }
    }

    let sumatoria = numero1 + numero2;
    alert(`El resultado de la suma de:\n${numero1} + ${numero2} = ${sumatoria}`)
}

En este caso me di a la tarea de investigar cómo podía validar si el texto que se ingresaba no incluía números o caracteres especiales y descubrí que con la expresión regular /^[a-zA-ZáéíóúÁÉÍÓÚ\s]+$/ se evalúa que la cadena pudiera contener letras del alfabeto en mayúsculas y minúsculas, así como las letras acentuadas mayúsculas y minúsculas y espacios representado con \s.

De manera similar para el ingreso de números descubrí que existe el método isNaN(numero) cuya abreviación del método proviene de Not a Number, por lo que si no es un número lo que se evalúa emitirá un mensaje de error y volverá a solicitar el número debido al while que también evalúa si la variable no es un número.

1 respuesta

Hola!

Gracias por compartir tu código con nosotros. es excelente ver cómo vas avanzando en el curso. Te animo a seguir practicando y experimentando con lo que has aprendido hasta ahora.

Sigue adelante con tu trabajo, y no dudes en regresar al foro si tienes alguna pregunta o necesitas ayuda.

Gracias Nuevamente!

Saludos,

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!