Outra forma de declarar uma função JS

  • Autor Autor zcriptz
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
zcriptz

zcriptz

1
Xi
Programador
Verificación en dos pasos activada
Suscripción a IA
Esto es para NOVATOS, porque se ve que los que ya lo saben creen que nacen sabiendo.

Quizás muchos estén acostumbrados a declarar funciones así:

Inserir CODE, HTML ou PHP:
function mostrarAlerta(mensaje){
	alert(mensaje);
}

Pero sabías que también puede declararse así?
Inserir CODE, HTML ou PHP:
mostrarAlerta = function(mensaje){
	alert(mensaje);
};

Se parece a una variable, no? Es que lo es.


Entonces "alert" sería así:
Inserir CODE, HTML ou PHP:
alert = function(){ [native code] }

Por lo tanto podría declararse así:
Inserir CODE, HTML ou PHP:
mostrarAlerta = alert;
(Pueden ponerlo en la consola, luego poner mostrarAlerta('algo') y verán :encouragement🙂


Que sería lo mismo que:
Inserir CODE, HTML ou PHP:
mostrarAlerta = function(){ [native code] }
(Porque le estamos declarando lo que vale "alert")




Quizás algunos de ustedes ponían por ejemplo:

Inserir CODE, HTML ou PHP:
function ocultarDiv(){
	document.getElementById('divx').style.display = 'none';
}

setTimeout(ocultarDiv, 1000);


Pero, comprendiendo lo anterior, se puede poner:
Inserir CODE, HTML ou PHP:
setTimeout(function(){ document.getElementById('divx').style.display = 'none' }, 1000);

Y no tener que declarar funciones al divino botón. 😛7:



Esto aplica a muchísimos más casos, pero se los dejo a ustedes. :encouragement:
 
Última edição:
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
La declaracion de la segunda forma, por convencion se usa solo para declarar una clase, mas no para declarar una funcion, ya que las 2 formas tienen diferencias que te pueden llevar a cometer errores logicos en tu aplicacion.

PD: esperaba leer algo novedoso :topsy_turvy:
 
La declaracion de la segunda forma, por convencion se usa solo para declarar una clase, mas no para declarar una funcion, ya que las 2 formas tienen diferencias que te pueden llevar a cometer errores logicos en tu aplicacion.

PD: esperaba leer algo novedoso :topsy_turvy:

¿Cómo que error? (A parte de que sea declarado despues de la ejecución, lo que llevaría a error lógicamente porque no está declarado aún)

Más que nada esto fue para gente que pone funciones para intervalos, etc...

Para que aprendan a usar expresiones de funciones.

Lamento que no fuera lo que esperabas, pero no lo publiqué para ti.
 
Última edição:
¡Qué novedad! JAJAJAJAAJAJAJAJAJAAJA
 
Si ya lo había visto, aunque prefiero la primer forma.
Tal vez soy algo anticuado, pero se me facilita mas entender un código (aunque yo mismo lo haya hecho 3 meses atras) de la forma clasica, y eso me pasa con todo (prefiero declarar una variable por linea, en una operación aritmetica usar una variable exclusiva para el resultado en lugar de imprimir la operación como tal y muchas otras cosas como esa.)

No entiendo porque la risa burlona, ni que fuera un foro de programadores senior o de preparación para el ACM-ICPC.
 
Muchas gracias amigo, no se mucho JS y siempre paso por esta sección para aprender cosas nuevas :encouragement:
 
otra forma con arrow function

const myFunction = (data) => console.log(data)
 

Tópicos similares

U
Respostas
3
Visitas
185
Lena32
Lena32
U
Respostas
3
Visitas
4K
Usuario eliminado 7982
U
Voltar
Topo