seleccionar - ¿Qué significa esto "(function(){});", una función entre corchetes, en javascript?
obtener valor dropdownlist javascript (6)
Posibles duplicados:
¿Qué significa esto? (función (x, y)) {...}) {a, b); en JavaScript
¿Qué significan los paréntesis que rodean una declaración de objeto / función / clase de JavaScript?
Hola a todos
No sé lo que hace lo siguiente:
(function(){
// Do something here
...
})(someWord) //Why is this here?;
Mis preguntas son:
- ¿Cuál es el significado de poner una función entre corchetes .ie
(function(){});
? - ¿Qué hace el conjunto de corchetes al final de una función?
Normalmente los veo en códigos jquery y en algunas otras bibliotecas de JavaScript.
Básicamente esto le permite declarar una función anónima, y luego (someWord)
entre paréntesis y escribiendo (someWord)
está ejecutando la función. Podrías pensar que es como declarar un objeto e inmediatamente crear una instancia del objeto.
Es una forma de definir una función anónima y luego ejecutarla de inmediato, sin dejar rastro, por así decirlo. El alcance de la función es verdaderamente local. Los corchetes ()
al final ejecutan la función: los corchetes adjuntos son para eliminar la ambigüedad de lo que se está ejecutando.
Está realizando una función que se llama inmediatamente, con someWord
como parámetro.
Inmediatamente llama a una función anonymus con un parámetro específico.
Un ejemplo:
(function(name){
alert(name);
})(''peter'')
Esto alerta a " peter ".
En el caso de jQuery, puede pasar jQuery
como parámetro y usar $
en su función. Por lo tanto, aún puede usar jQuery en modo no conflictivo, pero use el práctico $
:
jQuery.noConflict()
(function($){
var obj = $(''<div/>'', { id: ''someId'' });
})(jQuery)
Quizás this publicación te ayude un poco.
Se usa para crear una función anónima (función sin nombre que puede "anidarse" dentro de otra función) y pasar el argumento a esa función. El someWord se pasa como argumento, y la función puede leerlo usando la palabra clave "arguments".
Ejemplo simple de uso:
function Foo(myval) {
(function(){
// Do something here
alert(arguments[0]);
})(myval); //pass myval as argument to anonymous function
}
...
Foo(10);