Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
3
respuestas

[Duda] DUDA FUNCTION VERIFICAR

Por favor me ayudan, no entiendo la function verificar en esta situación y al final del codigo lo comparan así (button.onclick=verificar;) deje de entender

<meta charset="UTF-8">

<h1> PROGRAMA SECRETO </h1>
<input/> 
<button> VERIFICAR SI ACERTO CON EL SECRETO</button>
<script>
    var secreto=5;
    var input=document.querySelector("input");

    function verificar(){

if(parseInt(input.value) == secreto){
        alert("usted acerto")
    }
    else{
        alert("usted erró")
    }

    }

    var button=document.querySelector("button");
    button.onclick=verificar;


</script>
3 respuestas
solución!

En la funcion verificar se hace una compraracion de el valor que se ingresa en el input, con el valor de la variable secreto, para luego asi ver si acertó o no. Al final en (button.onclick=verificar;) no se hace una comparacion sino que se le asigna la funcion "verificar" a la variable button.onclick. Esto quiere decir que solo se llama a la funcion "verificar" cuando se hace click en el boton, que en este caso sería ().

Y la diferencia de verificar; con verificar(); ...?

Hola. Lo que tengo entendido es que en este caso "verificar" se utiliza como controlador de eventos (es decir, cuando hacemos click o cuando pasamos el mouse por encima). En esos casos (usando esa sintaxis de asignación de eventos es así) la funcion no va con () al final..

Por ejemplo, si deseas que se ejecute la función miFuncion cuando el usuario haga clic en un botón, deberías asignar la función como controlador del evento onclick sin usar paréntesis:

var boton = document.querySelector('button');
boton.onclick = miFuncion;

Resumiendo, al crear la variable "boton" estamos almacenando una referencia al elemento de botón en la página web, lo que nos permite acceder a él y modificar su comportamiento, como asignarle un controlador de eventos, en este caso "onclick"