Este artículo describe el uso de funciones anónimas en JavaScript. Compártelo para su referencia. Los detalles son los siguientes:
1. Defina una función
En JavaScript, una función se puede definir a través de "Declaración de funciones" y "Expresión de funciones", por ejemplo
1. Defina una función a través de "Declaración de funciones"
función t1 () {}2. Defina una función a través de la "expresión de la función"
t2 = function () {}Sin embargo, las dos formas de definir funciones tienen diferentes efectos
T1 es una declaración de función. Cuando 'análisis léxico', ao.t1 = function () {}, -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
T2 es una operación de asignación. Cuando 'ejecutar', ao.t2 = function () {}, el valor es el resultado devuelto por la expresión a la derecha, y solo funciona en la etapa 'ejecutar'.
2. Funciones anónimas
En JavaScript, la declaración en Brackets () se ejecuta como una expresión. Como se mencionó anteriormente, puede usar "expresión de funciones" para definir una función, por lo que podemos definir una función en (), como
(function t3 () {alert ('soy t3');})Si la función no usa el nombre, modifíelo de la siguiente manera
(function () {alert ('soy t3');})Dado que la declaración contenida en () es una expresión, tiene un valor de retorno. El valor de retorno de (function () {alert ('soy t3');}) es una función definida y puede llamarse inmediatamente, como
(function () {alerta ('soy t3');}) ()Por lo tanto, una función sin un nombre se define en los soportes (), que se llama función anónima. Este método, las funciones anónimas, se ejecutan inmediatamente sin contaminar la situación global, se denomina expresiones de funciones de ejecución de inmediato.
3. JQuery es una función anónima
El código de jQuery está encapsulado en una función anónima, que es el código más externo de jQuery:
(función (ventana, indefinida) {}) (ventana); // llamar ahoraPero, ¿por qué JQuery pasa por la ventana pero no indefinida?
Respuesta: Pasar la ventana es encontrar velocidad y reducir el tiempo para consultar variables. Por ejemplo, el siguiente código JS
function () {function () {function () {function () {function () {document.getElementById (); // Este documento se buscará capa por capa a lo largo del alcance hasta la ventana más externa a nivel mundial. }}}}JQuery es acelerar la búsqueda interna de variables locales y pasar directamente la ventana como parámetros, para que la ventana esté en el AO dentro de jQuery.
Es con fines de seguridad no pasar indefinidos, porque en las versiones inferiores de IE y FF, los indefinidos pueden reasignarse, como indefinido = 3;
Declarar la variable local indefinida (el nombre está indefinido), y al mismo tiempo, sin pasar los parámetros, el valor está naturalmente indefinido
Espero que este artículo sea útil para la programación de JavaScript de todos.