Maison > interface Web > js tutoriel > le corps du texte

Explication détaillée des méthodes d'appel et d'écriture de fonctions anonymes en Javascript (différents types)_compétences javascript

WBOY
Libérer: 2016-05-16 15:17:57
original
1146 Les gens l'ont consulté

Il existe de nombreuses façons de définir des fonctions en Javascript, et les littéraux de fonction en font partie. Par exemple, var fun = function(){}, si la fonction n'est pas affectée à fun, alors c'est une fonction anonyme. Bon, voyons comment la fonction anonyme est appelée.

Méthode 1, appelez la fonction et obtenez la valeur de retour. L'opérateur de coercition provoque l'exécution des appels de fonction

(function(x,y){
alert(x+y);
return x+y;
}(3,4)); 
Copier après la connexion

Méthode 2, appelez la fonction et obtenez la valeur de retour. Forcer l'exécution directe de la fonction puis renvoyer une référence, puis la référence est appelée et exécutée

(function(x,y){
alert(x+y);
return x+y;
})(3,4); 
Copier après la connexion

Cette méthode est également une méthode d'appel préférée utilisée par de nombreuses bibliothèques, telles que jQuery et Mootools.

Méthode 3, utilisez void

void function(x) {
x = x-1;
alert(x);
}(9);
Copier après la connexion

Méthode 4, utiliser l'opérateur -/

-function(x,y){
alert(x+y);
return x+y;
}(3,4);
+function(x,y){
alert(x+y);
return x+y;
}(3,4);
--function(x,y){
alert(x+y);
return x+y;
}(3,4);
++function(x,y){
alert(x+y);
return x+y;
}(3,4); 
Copier après la connexion

Méthode 5, utilisez le tilde (~)

~function(x, y) {
alert(x+y);
return x+y;
}(3, 4); 
Copier après la connexion

Méthode 6, l'exécution de fonction anonyme est placée entre crochets

[function(){
console.log(this) // 浏览器得控制台输出window
}(this)] 
Copier après la connexion

Méthode 7, ajouter typeof

avant la fonction anonyme
typeof function(){
console.log(this) // 浏览器得控制台输出window
}(this) 
Copier après la connexion

Méthode 8, ajouter delete

avant la fonction anonyme
delete function(){
console.log(this) // 浏览器得控制台输出window
}(this) 
Copier après la connexion

Méthode 9, ajouter void

avant la fonction anonyme
void function(){
console.log(this) // 浏览器得控制台输出window
}(this) 
Copier après la connexion

Méthode 10, utilisez une nouvelle méthode pour transmettre les paramètres

new function(win){
console.log(win) // window
}(this) 
Copier après la connexion

Méthode 11, utiliser new, ne pas transmettre de paramètres

new function(){
console.log(this) // 这里的this就不是window了
} 
Copier après la connexion

Méthode 12, opérateur virgule

 function(){
console.log(this) // window
}(); 
Copier après la connexion

Mode 13, opérateur XOR au niveau du bit

^function(){
console.log(this) // window
}(); 
Copier après la connexion

Méthode 14, opérateur de comparaison

function(){
console.log(this) // window
}(); 
Copier après la connexion

Enfin, regardez la mauvaise méthode d'appel

function(x,y){
alert(x+y);
return x+y;
}(3,4); 
Copier après la connexion

N façons d'écrire des fonctions anonymes sont les suivantes

Les fonctions anonymes n'ont pas de noms réels ni de pointeurs. Comment les exécuter ?

Sur la façon d'écrire des fonctions anonymes, c'est très divergent~

Le signe

convertit une déclaration de fonction en une expression de fonction. Résumez-le

Utilisation la plus courante :

Le code est le suivant :

(function() { 
alert('water'); 
})(); 
Copier après la connexion

Bien entendu, vous pouvez également prendre des paramètres :

Le code est le suivant :

(function(o) { 
alert(o); 
})('water'); 
Copier après la connexion

Vous souhaitez utiliser des appels en chaîne de fonctions anonymes ? Très simple :

Le code est le suivant :

(function(o) { 
console.log(o); 
return arguments.callee; 
})('water')('down'); 
Copier après la connexion

Nous connaissons tous les fonctions anonymes courantes, jetons un coup d'œil aux plus rares :

Le code est le suivant :

~(function(){ 
alert('water'); 
})();//写法有点酷~ 
Copier après la connexion

Le code est le suivant :

void function(){ 
alert('water'); 
}();//据说效率最高~ 
Copier après la connexion

Le code est le suivant :

+function(){ 
alert('water'); 
}(); 
Copier après la connexion

Le code est le suivant :

-function(){ 
alert('water'); 
}();
Copier après la connexion

Le code est le suivant :

~function(){ 
alert('water'); 
}();
Copier après la connexion

Le code est le suivant :

!function(){ 
alert('water'); 
}(); 
Copier après la connexion

Le code est le suivant :

(function(){ 
alert('water'); 
}());//有点强制执行的味道~
Copier après la connexion

Ce qui précède vous a expliqué comment appeler et écrire des fonctions anonymes en Javascript. J'espère que cela vous sera utile.

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