Otra forma de declarar una función JS

zcriptz Seguir

1
Ómicron
Programador
Verificación en dos pasos desactivada
Verificado por Whatsapp
Suscripción a IA
Desde
26 Mar 2013
Mensajes
4.622
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í:

Insertar CODE, HTML o PHP:
function mostrarAlerta(mensaje){
	alert(mensaje);
}

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

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


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

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


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




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

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

setTimeout(ocultarDiv, 1000);


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

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



Esto aplica a muchísimos más casos, pero se los dejo a ustedes. :encouragement:
 
Última edición:

XxMarkxX

Beta
Programador
Verificación en dos pasos desactivada
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
11 Sep 2015
Mensajes
128
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:
 

zcriptz

1
Ómicron
Programador
Verificación en dos pasos desactivada
Verificado por Whatsapp
Suscripción a IA
Desde
26 Mar 2013
Mensajes
4.622
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 edición:

Wizard

Xi
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Desde
27 Ago 2011
Mensajes
4.256
¡Qué novedad! JAJAJAJAAJAJAJAJAJAAJA
 

Jonatan Esquivel

Zeta
Programador
Verificación en dos pasos desactivada
Verificado por Whatsapp
Desde
13 Oct 2011
Mensajes
1.863
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.
 

aaherrera1

Beta
Programador
Verificación en dos pasos desactivada
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
23 Mar 2018
Mensajes
52
Muchas gracias amigo, no se mucho JS y siempre paso por esta sección para aprender cosas nuevas :encouragement:
 

LisaP

Beta
Programador
Verificación en dos pasos desactivada
Verificado por Whatsapp
Verificado por Binance
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
31 Jul 2017
Mensajes
60
otra forma con arrow function

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

¡Regístrate y comienza a ganar!

Beneficios

  • Gana dinero por participar
  • Gana dinero por recomendarnos
  • Descubre ofertas de empleo diariamente
  • Negocios seguros
  • ¡Información premium y más!

Acceder

¿Ya tienes una cuenta? Accede aquí

Arriba