Introducción a JavaScript

1

¿Por qué aprender JavaScript?

2

¡Hola Mundo! en Mac

3

¡Hola Mundo! en Windows

4

Anatomía de una variable

5

Tipos de datos en JavaScript

6

Creación de strings

7

Operadores aritméticos

8

Conversión de tipos: Type Casting y Coerción

9

Conversión de tipos explícita e implícita

Estructuras de Control y Lógica

10

Operadores de comparación

11

Operadores lógicos

12

Ejecución condicional: if

13

Ejercicio: Adivina el número

14

Ejecución condicional: switch

15

Loop: for

16

Loop: for of

17

Loop: for in

18

Loop: while

19

Loop: do while

Funciones y This

20

Anatomía de una función

21

Funciones vs Métodos

22

Funciones puras e impuras

23

Arrow function y enlace léxico

24

Contextos de ejecución y scope chain

25

¿Qué es Closure?

26

Preguntas a Desarrolladores Senior: ¿Por qué aprender Desarrollo Web?

Manipulación de Arrays

27

Introducción a Arrays

28

Mutabilidad e inmutabilidad de Arrays

29

Modificación básica del final con push( ), pop( )

30

Iteración con map( ) y forEach( )

31

Filtrado y reducción con filter( ) y reduce( )

32

Búsqueda de elementos con find( ) y findIndex( )

33

Crear copias con slice( )

34

Spread operator: casos de uso

Programación Orientada a Objetos

35

Anatomía de un Objeto

36

Trabajando con objetos en JavaScript

37

Función constructora

38

¿Qué es una clase?

39

Prototipos y herencias

40

Herencia en la práctica

41

Prototipos en la práctica

42

this en JavaScript

43

Proyecto: Crea una red social

44

Proyecto: Crea una red social parte 2

Asincronía en JavaScript

45

¿Cómo funciona el JavaScript Engine?

46

Promesas en JavaScript

47

Usando Async y await en JavaScript

48

For await of

49

¿Cómo funciona la web?

50

¿Cómo funciona HTTP?

51

Método GET en JavaScript

52

Método POST en JavaScript

53

Método DELETE en JavaScript

54

Importancia del id en el método DELETE

55

ECMAScript 6 y tus siguientes pasos

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Ejercicio: Adivina el número

13/55
Recursos

Aportes 35

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Revisar el contenido de este vídeo, usaron conceptos no explicados. un poco enredado en la explicación.
**Aca mi version!!** Le hice algunos cambios, le agregue html y css para que se vea mejor y en vez de que sea del 1 al 10, ahora es hasta el 100. ![](https://static.platzi.com/media/user_upload/image-30782cd3-dc74-4b9b-a19a-244b0f229d47.jpg) **CODE:** ```js <html lang="es"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Adivina el Número!</title> <style> :root { --Azul-oscuro: #282185; --Amarillo-anaranjado: #fcba3e; --Blanco: #f8f7f9; --Azul: #2f2692; --Marrón-claro: #9b8278; } body { font-family: Arial, sans-serif; text-align: center; margin-top: 50px; display: grid; place-items: center; background-color: var(--Azul-oscuro); } #game { max-width: 400px; margin: 0 auto; padding: 20px; border: 1px solid var(--Amarillo-anaranjado); border-radius: 10px; box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); background-color: var(--Azul); color: var(--Blanco); } input[type="number"] { width: 50px; padding: 5px; margin-right: 10px; } input[type="button"] { padding: 5px 10px; } #message { margin-top: 20px; } </style> </head> <body>

Adivina el Número

Adivina un número entre 1 y 100

<label for="game"> <input type="number" id="guess" min="1" max="100"> <input type="button" value="Guess!" onclick="checkGuess()"> </label>

<script> let randomNumber = Math.floor(Math.random() * 100) + 1; let attempts = 0; function checkGuess() { let userGuess = document.getElementById('guess').value; let message = document.getElementById('message'); attempts++; if (userGuess == randomNumber) { message.textContent = `¡Felicidades! Adivinaste el número en ${attempts} intentos.`; message.style.color = 'green'; resetGame(); } else if (userGuess > randomNumber) { message.textContent = 'Tu suposición es demasiado alta.'; message.style.color = 'red'; } else if (userGuess < randomNumber) { message.textContent = 'Tu suposición es demasiado baja.'; message.style.color = 'red'; } } function resetGame() { randomNumber = Math.floor(Math.random() * 100) + 1; attempts = 0; } </script> </body> </html> ```
No entiendo porque usar una consola aparte en vez de la consola de VSC como veníamos con Estefany :(
Mi mini juego 🎉![](https://static.platzi.com/media/user_upload/image-9a82b899-7a5c-4038-b323-f049eda46b30.jpg)
¿Pero que pasó acá? Primero una clase que no tiene contexto de nada y después veo en los comentarios gente con juegos de la clase super bonitos. Estamos en la clase 12 de fundamentos. ¿A que hora aprendieron a hacer eso? Más perdido que la mamá de José Miel.
Si estoy tomando el curso de fundamentos de javascript, no entiendo como de la clase 11 a esta que es la 12 tengo otro profesor y se saltaron un montón de detalles he perdido el hilo del aprendizaje.
Sería lindo que explicarán para sirve cada función, se que ya hay un bagaje pero se entendería mejor la clase, y no toma mucho tiempo.
Si se ejecuta Math.random() solo se genera un numero cero mas decimales ej: 0.15, 0.30 por eso se multiplica por 10 para que de numeros entre el 0 y el 9. Pero como el rango requerido es entre 1 al 10 por eso se le suma 1. Por otro lado Math.floor en términos matemáticos, "floor" se refiere a la función que redondea un número hacia abajo al entero más cercano. Por eso se puede utilizar juntos Math.floor(Math.random() \* 10 + 1)
Me parece que falta mas organización en esa explicación
![](https://static.platzi.com/media/user_upload/Screenshot%202024-07-28%20at%2012.20.51AM-283fe9f6-5e7d-4078-8b31-b96f9b133c96.jpg)\\<html lang="en"> \<head> \<meta charset="UTF-8"> \<meta name="viewport" content="width=device-width, initial-scale=1.0"> \<script src="https://cdn.tailwindcss.com">\</script> \<title>Juego secreto\</title>\</head> \<body> \<section class=" mx-auto max-w-screen-xl px-4 py-32 sm:px-6 lg:flex lg:h-screen lg:items-center lg:px-8"> \
\<h1 class="text-3xl font-extrabold sm:text-5xl"> Bienvenido al juego de: \Adivina El numero\ \ \

Se trata de adivinar el numero que tiene la computadora selecciona un numero entre el \1-15\ \

\
\<form class="mx-auto"> \<input id="number-input" type="number" min="1" max="15" class="mb-3 border-2" required> \<button id="boton-s" class="block w-full rounded bg-rose-600 mx-auto px-12 py-3 text-sm font-medium text-white shadow hover:bg-rose-700 focus:outline-none focus:ring active:bg-rose-500 sm:w-auto" type="submit"> Adivinar \</button> \</form> \
\

\

\

\

\

\

\
\</section> \<script src="./numero-secreto.js">\</script>\</body> \</html> const numeroSecreto = Math.floor(Math.random() \* 15) + 1;const submitBoton = document.querySelector('#boton-s');const resultado = document.querySelector('#resultado');const numeroToAdivinar = document.querySelector('#numero-a-adivinar')const tuNumero = document.querySelector('#tu-numero') function validacionNumero(numeroJugador) { return numeroJugador === numeroSecreto;} submitBoton.addEventListener("click", function (e) { e.preventDefault(); *// Prevenimos que se refresque la pantalla* const numeroJugador = parseInt(document.querySelector('#number-input').value, 10); const esCorrecto = validacionNumero(numeroJugador); numeroToAdivinar.innerText = `Numero a Adivinar: ${numeroSecreto}` tuNumero.innerText = `Tu numero Es: ${numeroJugador}` if (esCorrecto) { resultado.innerText = '¡Adivinaste!!!!!!'; } else { resultado.innerText = 'Perdiste animal'; };});
![](https://static.platzi.com/media/user_upload/Screenshot%202024-07-26%20at%2016.21.19-b2a91059-c9c6-493c-941f-c55e5b7de45c.jpg)Les muestro el proyecto con el cual trabajaré para este curso y el de DOM. Un ToDo List para aplicar todo lo que iré aprendiendo. Vamos con todo !! 💚
```html <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>ultimate js</title> <link rel="stylesheet" href="style.css"> </head> <body>

Guess the Number

Adivina un número entre el 1 y el 100

<label for="guess">Introduce tu conjetura: <input type="number" id="guess" min="1" max="100"> </label> <input type="button" value="Guess!" onclick="checkGuess()">

<script src="app.js"></script> </body> </html> ```f```js ``````css body { display: flex; justify-content: center; align-items: center; height: 100vh; margin: 0; font-family: Arial, sans-serif; background-color: #f4f4f9; } .box { width: 300px; padding: 20px; border: 2px solid #333; border-radius: 10px; background-color: #fff; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); text-align: center; } .box h1 { margin-top: 0; font-size: 24px; } .box p { margin: 10px 0; } .box label { display: block; margin-bottom: 10px; } .box input[type="number"] { width: 100%; padding: 8px; margin-top: 5px; box-sizing: border-box; } .box input[type="button"] { width: 100%; padding: 10px; margin-top: 10px; background-color: #007bff; border: none; color: white; border-radius: 5px; cursor: pointer; font-size: 16px; } .box input[type="button"]:hover { background-color: #0056b3; } #message { margin-top: 20px; font-size: 18px; color: #333; } ``````js function checkGuess() { var guess = document.getElementById('guess').value; var message = document.getElementById('message'); if (guess >= 1 && guess <= 100) { message.textContent = 'Your guess is: ' + guess; } else { message.textContent = 'Please enter a number between 1 and 100.'; } } ```![]()![](https://static.platzi.com/media/user_upload/Img%20Adivina%20el%20numero-efb19224-627a-4f92-a202-2c48e08c9e19.jpg)
Creo que se unificó el curso anterior de JS basico con las nuevas clases de Estefany. Incluso con los comentarios anteriores! Por eso parece un cambio muy brusco en los contenidos y el hilo de la clase. Y por eso apareces proyectos que parecen mas avanzados
los cursos de platzi siempre me han gustado mucho pero siento que este curso lo hicieron como a la carrera siento que están explicando los conceptos muy por encima pensé que este iba a ser el mejor curso de JS pero honestamente siento que se quedaron cortos por ejemplo el concepto de prompt no lo habían explicado en ninguna clase
![](https://static.platzi.com/media/user_upload/image-33d2bc54-5abf-46b4-bf38-1eaef972bb69.jpg)intento ejecutar la primera parte del ejercicio donde están las primeras 4 líneas de código y me sale error en el console...
para escribir las comillitas invertidas usar ALT+96 = ` 💻👌
hola chicos como estan, tengo una duda, quise usar el prompt para que el usuario ingresara el numero pero no precisamente para este juego sino para hacer otras comprobaciones con condicionales pero lamentablemente me dice que con un ambiente de en node.js no es posible usarlo, si me pudiesen ayudar por favor
Le pregunté a ChatGPT que podemos hacer con esto para poder interiorizar mejor los conceptos y aquí se los comparto En cada condición (`if`, `else if`, `else`), puedes ejecutar cualquier código válido de JavaScript. Aquí te doy algunas opciones de lo que puedes hacer: 1. Asignar valores: Puedes asignar valores a variables. ```javascript let descuento; let edad = 22; if (edad < 18) { descuento = 0.5; } else if (edad < 25) { descuento = 0.2; } else { descuento = 0.1; } ``` 2. Mostrar mensajes en la consola: Es útil para depuración o para interactuar con la consola del navegador. ```javascript let numero = 10; if (numero > 0) { console.log("El número es positivo"); } else { console.log("El número es negativo o cero"); } ``` 3. Llamar funciones: Puedes ejecutar funciones en cada bloque de condiciones. ```javascript function saludar() { console.log("Hola!"); } let hora = 8; if (hora < 12) { saludar(); // Llama a la función si la condición es verdadera } ``` 4. Modificar el DOM: Si trabajas con una página web, puedes cambiar elementos del HTML usando JavaScript. ```javascript let temperatura = 30; if (temperatura > 25) { document.body.style.backgroundColor = "yellow"; // Cambia el color de fondo de la página } else { document.body.style.backgroundColor = "blue"; } ``` 5. Operaciones matemáticas: Puedes realizar cálculos matemáticos o aplicar fórmulas. ```javascript let a = 5, b = 10; if (a < b) { let resultado = b - a; console.log("Resultado:", resultado); } ``` 6. Bucles o ciclos: Dentro de una condición, puedes ejecutar bucles como `for`, `while`, etc. ```javascript let numero = 3; if (numero > 0) { for (let i = 0; i < numero; i++) { console.log("Iteración:", i); } } ``` 7. Manejo de arreglos (arrays): Puedes realizar operaciones sobre arrays, como agregar, eliminar, o modificar elementos. ```javascript let lista = []; let edad = 16; if (edad < 18) { lista.push("Descuento estudiante"); } else { lista.push("Descuento adulto"); } console.log(lista); ``` 8. Control de flujo con `return`, `break`, `continue`: Puedes usar estas instrucciones para controlar el flujo de ejecución dentro de las condiciones. ```javascript function verificarNumero(numero) { if (numero < 0) { return "Número negativo"; // Termina la función si la condición es verdadera } else { return "Número positivo"; } } console.log(verificarNumero(-5)); ``` 9. Condiciones anidadas: Puedes tener `if` dentro de otros `if` (condiciones anidadas) para crear lógica más compleja. ```javascript let edad = 20; let tieneLicencia = true; if (edad >= 18) { if (tieneLicencia) { console.log("Puedes conducir"); } else { console.log("Necesitas una licencia para conducir"); } } else { console.log("Eres menor de edad"); } ``` 10. Manejo de errores o excepciones: Puedes usar `try...catch` para manejar posibles errores. ```javascript let input = "abc"; if (isNaN(input)) { try { throw new Error("El valor ingresado no es un número"); } catch (e) { console.log(e.message); } } else { console.log("El valor es un número"); } ``` Resumen: En cada condición (`if`, `else if`, `else`) puedes ejecutar cualquier tipo de lógica, como asignar valores, ejecutar funciones, modificar el DOM, hacer cálculos, manejar errores, o controlar el flujo del programa. ¡Es muy flexible!
Asi me quedo a mi, Use pues JavaScript, Astro y Tailwind; Aca el codigo: ![](https://static.platzi.com/media/user_upload/image-c424adc1-6b88-48c9-b705-83ce70dc6c09.jpg)![](https://static.platzi.com/media/user_upload/image-2b281484-837e-43d3-a4d1-7693a7fdb13c.jpg)![](https://static.platzi.com/media/user_upload/image-f6d79c6b-a7c2-4501-b5ba-d8cb87547bba.jpg)![](https://static.platzi.com/media/user_upload/image-cd0ba88d-3131-41fe-a40f-7f933320a8c1.jpg) Aca el codigo JS: ```js function i(min, max) { return Math.floor(Math.random() * (max - min) + min); } var numeroSecreto = i(0, 11); var botonEnviar = document.getElementById('enviar'); var botonReiniciar = document.getElementById('reiniciar'); botonEnviar.addEventListener('click', recibir); botonEnviar.addEventListener('click', resultado); botonEnviar.addEventListener('click', print); botonEnviar.addEventListener('click', numeroJugadorResultado); botonReiniciar.addEventListener('click', reiniciar); function reiniciar() { location.reload(); } function recibir() { var numeroJugador = document.getElementById('texto').value; const r = numeroJugador; return Number(r); } function resultado() { if (recibir() >= 0 && recibir() <= 10) { if (recibir() == numeroSecreto) { const r = 'Ganaste'; return r; } else { const r = 'Perdiste'; return r; } } else if (recibir() < 0 || recibir() > 10) { const r = 'Solo se pueden ingresar numero entre el 0 y el 10, vuelve a intentar, Perdiste'; return r; } else { const r = 'Debes ingresar un numero, no letras o símbolos'; return r; } } function numeroJugadorResultado() { if (resultado() === 'Debes ingresar un numero, no letras o símbolos') { const r = 'El numero que ingreso el jugador es incorrecto'; return r; } else if (resultado() === 'Solo se pueden ingresar numero entre el 0 y el 10, vuelve a intentar, Perdiste') { const r = 'El numero que ingreso el jugador es incorrecto'; return r; } else if (resultado() === 'Ganaste' || resultado() === 'Perdiste') { const r = `El numero Jugador del es ${recibir()}`; return r; } } function styles() { botonEnviar.disabled = true; botonEnviar.style.color = '#b6bbc5'; botonEnviar.style.backgroundColor = '#0e6077'; botonReiniciar.style.display = 'flex'; botonReiniciar.style.justifyContent = 'center'; } function print() { if (resultado() === 'Solo se pueden ingresar numero entre el 0 y el 10, vuelve a intentar, Perdiste') { styles(); const color = resultado() == 'Ganaste' ? 'bg-green-500' : 'bg-red-500'; document.querySelector('#result').innerHTML = ` <h1 class="w-[90%]">Solo se pueden ingresar numero entre el 0 y el 10, vuelve a intentar. <h1 class='w-[30%] rounded-lg ${color}'>Perdiste`; } else { styles(); const color = resultado() == 'Ganaste' ? 'bg-green-500' : 'bg-red-500'; document.querySelector('#result').innerHTML = `

El numero secreto es ${numeroSecreto}

${numeroJugadorResultado()}

<h1 class='w-[30%] rounded-lg ${color}'>${resultado()}`; } } ```El codigo HTML y TailWind: ```html <h1 class="relative bottom-8 w-[85vw] text-center text-2xl font-bold text-gray-100 sm:w-[60vw]"> Este es un Juego en el cual tienes que adivinar un numero del 0 al 10, compites contra la PC <main class="h-[40%] w-[90%] rounded-2xl bg-cyan-950 shadow-2xl sm:w-[70%] lg:w-[35%]">
<input type="number" id="texto" class="w-[50%] rounded-lg bg-slate-300 text-center font-semibold text-sky-950 placeholder:font-semibold placeholder:text-sky-950 sm:placeholder:pl-[10%]" min="0" max="10" placeholder="numero de 0 a 10" /> <button id="enviar" class="mt-4 h-auto w-[5rem] rounded-lg border-[2px] border-[#0e6077] bg-blue-950 font-semibold duration-[120ms] active:scale-95 sm:ml-8 sm:mt-0" >enviar</button >
<button id="reiniciar" class="hidden h-auto w-[5rem] rounded-lg border-[2px] border-[#0e6077] bg-blue-950 text-[0.9rem] font-semibold duration-[120ms] active:scale-95" >Reiniciar</button >
</main> ```
La función **Math.floor()** devuelve el máximo entero menor o igual a un número. La función **Math.random()** devuelve un número de coma flotante pseudo-aleatorio, comprendido en el rango de 0 a menor que 1 (es decir, incluido el 0 pero no el 1), con una distribución aproximadamente uniforme en este rango. Dicho rango puede ser ampliado hasta los valores deseados.
Hola chicos aqui va mi aporte:\\<html lang="en">\<head>    \<meta charset="UTF-8">    \<meta name="viewport" content="width=device-width, initial-scale=1.0">    \<title>ultimate js\</title>    \<link rel="stylesheet" href="style.css">\</head>\<body>    \
        \

Guess the Number\

        \

Adivina un número entre el 1 y el 100\

        \<label for="guess">Introduce tu conjetura:        \<input type="number" id="guess" min="1" max="100">        \</label>        \<input type="button" value="Guess!" onclick="checkGuess()">        \

\

    \
    \<script src="app.js">\</script>\</body>\</html>```js <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>ultimate js</title> <link rel="stylesheet" href="style.css"> </head> <body>

Guess the Number

Adivina un número entre el 1 y el 100

<label for="guess">Introduce tu conjetura: <input type="number" id="guess" min="1" max="100"> </label> <input type="button" value="Guess!" onclick="checkGuess()">

<script src="app.js"></script> </body> </html> ```
![](https://static.platzi.com/media/user_upload/image-e46489bd-f9d1-4126-bcc1-728ca51eb57c.jpg)mi humilde aporte
Viendo que Algunos compañeros han señalado que es importante hacer una pausa para explicar algunos conceptos como lo indica @wilbort Encomenderos Ruiz por ejemplos qué es un método que fueron los que se uso en la clase y cómo funciona. Esto es crucial, ya que quienes están tomando este curso de fundamentos pueden perder esta información esencial. Los métodos en JavaScript son funciones que están asociadas a un objeto. Y Permiten realizar acciones específicas o manipular datos. A continuación, se describen algunos métodos comunes: \#### 1. \*\*Math.floor()\*\* \*\*Descripción\*\*: Redondea un número hacia abajo al entero más cercano. \*\*Ejemplo\*\*: ```javascript let numero = 4.7; let redondeado = Math.floor(numero); console.log(redondeado); // Output: 4 ``` \#### 2. \*\*Math.random()\*\* \*\*Descripción\*\*: Devuelve un número decimal aleatorio entre 0 (inclusive) y 1 (exclusive). \*\*Ejemplo\*\*: ```javascript let numeroAleatorio = Math.random(); console.log(numeroAleatorio); // Output: un número entre 0 y 1 ``` Para obtener un número aleatorio en un rango específico: ```javascript let min = 1; let max = 10; let aleatorioEnRango = Math.floor(Math.random() \* (max - min + 1)) + min; console.log(aleatorioEnRango); // Output: un número entre 1 y 10 ``` \#### 3. \*\*parseInt()\*\* \*\*Descripción\*\*: Convierte una cadena de texto en un número entero. Puedes especificar la base (radix) del sistema numérico. \*\*Ejemplo\*\*: ```javascript let texto = "123"; let numeroEntero = parseInt(texto); console.log(numeroEntero); // Output: 123 ``` Con base: ```javascript let textoHex = "1A"; let numeroHex = parseInt(textoHex, 16); console.log(numeroHex); // Output: 26 ``` \### Resumen Estos métodos son herramientas útiles en JavaScript para realizar operaciones matemáticas y manipulación de datos.
Les dejo mis notas por aquí, hice algunas lineas paso a paso para que sean mas faciles de entender y en comentarios intento poner la explicación de cada una. ![](https://static.platzi.com/media/user_upload/Captura%20de%20pantalla%202024-08-15%20172249-52667d2e-fad2-45b6-89b1-bce5d2b77992.jpg)
me parece que falta información para poder seguir y hacerlo a la vez, para vincularlo a un navegador, como construye el html, como vincula o que puerto usar, etc
procura que se vea completo tu código en VS de favor , gracias
![](https://static.platzi.com/media/user_upload/image-7625498b-325f-4fc9-a38a-a33deefa98d6.jpg)
![](https://static.platzi.com/media/user_upload/imgAdivina-30c46cad-b645-4b47-b2ba-d224ef768d23.jpg)Asi quedo mi Juego.
```txt ``` ```txt ```
Si tienes vscode porque no ejecutas los códigos ahí mismo tenemos extensiones como code Runner que nos pueden ayudar
Después de terminar todo este curso de JavaScript que me recomiendan seguir ?
```js const numeroSecreto = Math.floor(Math.random() * 10 + 1); const numeroJugador = parseInt( prompt("Adivina el número secreto entre el 1 y el 10") ); console.log(`Este es el número con el que juegas: ${numeroJugador}`); if (numeroJugador === numeroSecreto) { console.log(`Ganaste, el número secreto era: ${numeroSecreto}`); } else { console.log(`Perdiste, el número era: ${numeroSecreto}`); } ```const numeroSecreto = Math.floor(Math.random() \* 10 + 1); const numeroJugador = parseInt(    prompt("Adivina el número secreto entre el 1 y el 10")); console.log(`Este es el número con el que juegas: ${numeroJugador}`); if (numeroJugador === numeroSecreto) {    console.log(`Ganaste, el número secreto era: ${numeroSecreto}`);} else {    console.log(`Perdiste, el número era: ${numeroSecreto}`);}
![]()![](https://static.platzi.com/media/user_upload/image-50b5c1ce-d9c4-4fc7-a860-419b8cb6bf30.jpg)
Hola compañeros! Aquí les dejo mi solución al ejercicio, tengo que hacer la aclaración de que quise implementar ciclos a pesar de que es un tema que veremos más adelante en el curso! 👀 Comenta tu solución! ```js // Function to generate a random integer within a range function generateRandomNumber(minRange, maxRange) { return Math.floor(Math.random() * maxRange - minRange + 2) } invalidLimits = true; let minimum, maximum while (invalidLimits) { minimum = parseInt(prompt("Choose an integer value as your minimum range")); maximum = parseInt(prompt("Choose an integer value as your maximum range")); if (isNaN(minimum) || isNaN(maximum)) { alert("Please provide valid numbers for your guess limits"); } else { invalidLimits = false; } } alert(`A random number between ${minimum} and ${maximum} has been chosen, get ready your 3 guesses!`); const randInt = generateRandomNumber(minimum, maximum); let guessed = false; // Give the user 3 chances to guess the number for (let iterator=0; iterator<3; iterator++) { const guess = parseInt(prompt(`What will your guess #${iterator+1} be?`)); if (guess === randInt) { alert(`Congratulations! You have guessed the number: ${guess}`); guessed = true; break; } else if (isNaN(guess)) { alert("You just wasted a guess! Make sure to provide a valid number"); continue; } if (guess < randInt) { alert(`The random number is higher than your guess!`); } else { alert(`The random number is lower than your guess!`); } } if (!guessed) { alert(`You lose, the correct number was ${randInt}`); } ```
¿Como puedo conectar mi JavaScript con mi navegador web? Para que asi como a el cuando le de enter se ejecute y no tenga que copiarlo todo y correrlo