Maison > interface Web > js tutoriel > Utilisation des fonctions anonymes JavaScript Analysis_Javascript Compétences

Utilisation des fonctions anonymes JavaScript Analysis_Javascript Compétences

WBOY
Libérer: 2016-05-16 16:14:15
original
1174 Les gens l'ont consulté

Les exemples de cet article décrivent l'utilisation des fonctions anonymes JavaScript. Partagez-le avec tout le monde pour votre référence. Les détails sont les suivants :

1. Définir une fonction

En JavaScript, une fonction peut être définie via une "déclaration de fonction" et une "expression de fonction", telles que

1. Définir une fonction via la "déclaration de fonction"

function t1(){}
Copier après la connexion

2. Définir une fonction via "expression de fonction"

t2 = function(){}
Copier après la connexion

Mais les effets de la définition des fonctions de deux manières sont différents
t1 est une déclaration de fonction. Lors de « l'analyse lexicale », AO.t1 = function(){},-------------il jouera un rôle dans l'étape « d'analyse lexicale »
t2 est une opération d'affectation lors de 'run', AO.t2 = function(){}, la valeur est le résultat renvoyé par l'expression de droite, ------elle n'entre en jeu que lors de 'run'. scène

2. Fonction anonyme

En JavaScript, les instructions entre parenthèses () sont exécutées comme des expressions. Comme mentionné ci-dessus, vous pouvez utiliser des « expressions de fonction » pour définir une fonction. Ensuite, nous pouvons définir une fonction dans (), telle que
.

(function t3(){alert(' i am t3');})
Copier après la connexion

Si la fonction n'utilise pas de nom, modifiez-le comme suit

(function(){alert(' i am t3');})
Copier après la connexion

Puisque l'instruction contenue dans () est une expression, elle a une valeur de retour de (function(){alert(' i am t3');}) est la fonction définie, qui peut être appelée immédiatement. , comme

(function(){alert(' i am t3');})()
Copier après la connexion

Par conséquent, définissez une fonction sans nom entre parenthèses (), qui est appelée fonction anonyme. De cette manière, les fonctions anonymes sont exécutées immédiatement sans polluer la situation globale, ce qu'on appelle l'exécution immédiate des expressions de fonction.

3. jquery est une fonction anonyme

Le code de jquery est encapsulé dans une fonction anonyme. C'est le code le plus externe de jquery :

(function(window,undefined){})(window);//立即调用
Copier après la connexion

Mais pourquoi jquery passe-t-il la fenêtre mais pas indéfini ?

Réponse : Le but du passage de la fenêtre est d'accélérer la recherche et de réduire le temps d'interrogation des variables. Par exemple, le code js suivant

function(){
 function(){
   function(){
  function(){
   document.getElementById();
//这个document将会沿作用域层层上找,直到最外层window全局。
  }
   }
 }
}
Copier après la connexion

Afin d'accélérer la recherche interne des variables locales, jquery passe directement la fenêtre en paramètre, afin que la fenêtre soit sur l'AO interne de jquery.

La raison de ne pas transmettre undéfini est pour des raisons de sécurité, car dans les versions inférieures d'IE et de FF, undéfini peut être réaffecté, comme undéfini=3

;

Déclarez la variable locale indéfinie (le nom est indéfini), et en même temps, sans passer de paramètres, la valeur sera naturellement indéfinie

J'espère que cet article sera utile à la conception de la programmation JavaScript de chacun.

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal