Me quedo con ésto.
Mencionaste que es importante indicar al usuario cuántos intentos realizó o cuántos fueron los máximos números de intentos. Entonces, usando template strings (cadenas de plantilla), hacemos eso. Pero aquí estamos usando comillas simples, para template strings debemos usar comillas invertidas. Las cambiamos y con ello podemos hacer uso de las variables. Es $ entre llaves la variable que sería en este caso maximosIntentos.
El primero es la forma en que hacemos el contador. Comenté en el video anterior que esta es la forma más detallada, más explícita ¿verdad? Hay un par de formas que se denotan como abreviadas y que son derivadas del lenguaje C, que es uno de los lenguajes más antiguos y también muy conocido para múltiples aplicaciones. El caso es que vamos a convertir esta forma, voy a comentarlo para que se compare, esta forma de intentos += 1.
Esta forma nos dice que a lo que tiene le suma 1 y la otra forma es intentos++, con ello reducimos el código.
No es que siempre debamos usar el operador ternario porque no es conveniente para todas las situaciones, pero por ejemplo nosotros podemos aquí hacer unos cambios en nuestro código para no tener que usar esa variable palabraVeces.
Veamos cómo lo hacemos. Entonces, voy a quitar este código, lo voy a comentar. La variable la quitamos, la comentamos y aquí donde estamos usando la variable, recuerdas que te comenté en un video anterior que cuando usamos template strings no solo podemos usar variables, también podemos usar código JavaScript. Entonces, aquí voy a combinar el código y el JavaScript dentro del template string para aplicar ese operador ternario.
¿Quién nos indica la palabra que debemos mostrar? ¿Recuerdas? Era... El contador de intentos. Entonces decimos intentos, y podrías pensar que vamos a mostrar nuevamente el número. Ahora, usando el signo de interrogación, evaluamos de forma abreviada. Le decimos al JavaScript que evalúe esto. ¿Qué vamos a evaluar? Si intentos es mayor que 1, decimos "veces", o si intentos es igual a 1, decimos "vez". De lo contrario, y observa cómo escribí dos puntos. Entonces, el signo de interrogación se convierte en un "if" y los dos puntos se convierten en un "else". Colocamos "veces". Y ahora, si probamos nuestro código, vamos a probarlo.
Entonces, esa última forma que dejamos de intentos++ es la forma más común y corriente para trabajar con incrementadores, que es el caso de nuestra variable intentos. Y la segunda mejora fue el operador ternario. Como Leo nos mostró al usar template strings (cadenas de texto con formato) dentro de nuestra frase en la línea 14. Si puedes ubicarte allí, Leo. Es donde mostramos el mensaje de que se acertó y para poder utilizar la palabra "vez" o "veces" cuando usamos el plural o el singular en función de intentos.
La forma en que lo habíamos hecho en los videos anteriores era construyendo una condición. Teníamos que construir una variable y decir si intentos es mayor que 1 entonces la palabra es plural. Si no, la palabra es singular. Mira la magia aquí que Leo nos mostró, que prácticamente resumió todo eso en pocas palabras. En una frase donde nos dice que está comparando si intentos es igual a 1 y esta sintaxis del operador ternario. Entonces el signo de interrogación me indica que está haciendo una comparación, que está haciendo una condición. Si es verdadero, entonces el primer parámetro es, si eso es verdadero, devuélveme esto. Y los dos puntos simbolizan el "else" o el "si no" o el caso contrario, devuélveme "veces".
Y aquí trayendo lo que Leo nos dice. Entonces el template string lo estamos usando con una combinación que también me pareció muy mágico aquí. Nuestro template string, las comillas invertidas, las estamos utilizando combinando texto, la variable numeroUsuario, la variable intentos y un operador ternario para decir si mi palabra es plural o singular. Entonces hay mucha ingeniería aquí en una sola línea, Leo.