Título: [js][duda] como y cuando usar "!function" (para que sirve) Publicado por: .:Xx4NG3LxX:. en 27 Noviembre 2020, 04:05 am Hello friends....
He visto varios JavaScripts que incluyen !function, por más que he buscado y buscado no encontré nada. Esperaba que me pudiesen orientar en esto. ¿Es algún tipo especial de función? ¿Cuándo aplicarlo y cuando no? ¿Es la única que hay de ese tipo? (Es decir, ¿no existe otra keyword que sea algo por el estilo?) Gracias y saludos.. Título: Re: [js][duda] como y cuando usar "!function" (para que sirve) Publicado por: @XSStringManolo en 27 Noviembre 2020, 13:39 pm El operador ! es el operador de negación. Algunas veces se utiliza antes de la keyword function para convertirla en una function expression. Si le añades paréntesis se produce la llamada a la función retornando true (porque las function expression llamadas de esta forma retornan undefined y el operador ! (not) retorna un booleando con el valor contrario al especificado. Es decir, si era valor positivo pasa a negativo y si era negativo pasa a positivo. Ej:
La función: function saludar() { alert("Hola") } Puedes crearla e invocarla con: !function saludar() { alert("Hola") }(); La forma más frecuente de realizar esto es utilizando la sintaxis: (function saludar() { alert("Hola") })(); Utilizando el ! se ahorra un caracter, pero esta forma de hacerlo si retorna el valor de retorno de la función. Si le sumas que puedes utilizar la sintaxis de function arrow de ES6+: alert( (() => 5 * 5)() ); suma( (numero => numero * 5)(), 8); suma( (numero => numero * 5)(), (otroNumero => numero * 7)() ); Suele ser bastante práctico para usar como parámetros de otras funciones, crear closures, encapsular el scope, ahorrar código... |