


Explication détaillée des exemples de fonctions d'exécution immédiate en JavaScript
Javascript est plus décontracté que les autres langages de programmation, donc le code JavaScript est plein de toutes sortes de méthodes d'écriture étranges, qui peuvent parfois ressembler à de la fumée et des miroirs. Bien sûr, être capable de comprendre toutes sortes de méthodes d'écriture est aussi un avantage. compréhension plus approfondie des caractéristiques du langage JavaScript. Cet article vous présente principalement les informations pertinentes sur la fonction d'exécution immédiate en JavaScript. J'espère qu'il pourra vous aider.
Préface
la fonction d'exécution js permet immédiatement à votre fonction d'être exécutée immédiatement après la création du mode d'exécution js est une syntaxe, ce mode. permet à vos fonctions d'être exécutées immédiatement après leur définition. Ce mode est essentiellement une expression de fonction (nommée ou anonyme) qui est exécutée immédiatement après sa création.
( function(){…} )() et ( function (){…} () ) sont deux façons courantes d'écrire des fonctions JavaScript à exécuter immédiatement. Au début, je pensais qu'il s'agissait d'une fonction anonyme encapsulée. entre parenthèses, puis l'ajout de parenthèses à la fin pour appeler la fonction atteint finalement l'objectif d'exécuter la fonction immédiatement après sa définition. Plus tard, il a été découvert que la raison de l'ajout des parenthèses n'était pas la même.
Pas grand chose à dire ci-dessous, jetons un œil à l'introduction détaillée.
Habituellement, nous déclarons une fonction des manières suivantes :
// 声明函数f1 function f1() { console.log("f1"); } // 通过()来调用此函数 f1(); //一个匿名函数的函数表达式,被赋值给变量f2: var f2 = function() { console.log("f2"); } //通过()来调用此函数 f2(); //一个命名为f3的函数的函数表达式(这里的函数名可以随意命名,可以不必和变量f3重名),被赋值给变量f3: var f3 = function f3() { console.log("f3"); } //通过()来调用此函数 f3();
Si vous avez vu quelques contrôles personnalisés, vous constaterez que la plupart d'entre eux suivent ce style d'écriture :
(function() { " // 这里开始写功能需求 })();
C'est ce qu'on dit souvent immédiatement Fonction d'exécution ( IIFE), comme son nom l'indique, signifie que cette fonction exécute le corps de la fonction immédiatement et ne nécessite pas que vous l'appeliez activement. Généralement, nous n'utilisons IIFE que pour les fonctions anonymes :
Premièrement, il n'est pas nécessaire de nommer la fonction, ce qui évite de contaminer les variables globales
Deuxièmement, une portée distincte est formée à l'intérieur de IIFE, qui peut encapsuler certaines variables privées qui ne peuvent pas être lues en externe.
Si vous n’arrivez pas à comprendre ces deux phrases, commençons par le principe de fonctionnement de l’IIFE.
Étant donné que IIFE est généralement utilisé pour les fonctions anonymes, nous utilisons ici une simple fonction anonyme comme exemple :
var f = function(){ console.log("f"); } f();
Nous avons trouvé ici que f n'est qu'une variable de référence de cette fonction anonyme, donc puisque f() peut appeler cette fonction, puis-je remplacer f par la fonction elle-même :
function(){ console.log("f"); }();
Après l'exécution, les résultats suivants sont obtenus :
Uncaught SyntaxError: Unexpected token (
La raison de cette erreur est qu'après que le moteur Javascript ait vu le mot-clé de fonction, il pense qu'il est suivi de Les déclarations de fonction ne doivent pas se terminer par des parenthèses. La solution est de faire savoir au moteur que la partie avant les parenthèses n'est pas une instruction de définition de fonction, mais une expression, qui peut être calculée. Voici une distinction entre la déclaration de fonction et l'expression de fonction :
1. déclaration (C'est-à-dire que nous utilisons généralement la fonction x(){} pour déclarer une fonction)
function myFunction () { /* logic here */ }
2. Expression de fonction (similaire à ce formulaire)
var myFunction = function () { /* logic here */ }; var myObj = { myFunction: function () { /* logic here */ } };
On a appris à l'école primaire que les expressions entourées de () seront exécutées en premier, comme les suivantes :
1+(2+3) //这里先运行小括号里面的内容没有意见撒
En fait, les parenthèses ont un effet similaire en JavaScript Lorsque le moteur Javascript voit le mot-clé de fonction, il pensera qu'il s'agit d'une déclaration de fonction. le moteur Javascript voit les parenthèses en premier. Que se passe-t-il avec les parenthèses :
//用小括号把函数包裹起来 (function(){ console.log("f"); })();
La fonction s'exécute avec succès :
f //控制台输出
Dans ce cas, le moteur Javascript pensera qu'il s'agit d'une expression, pas d'une déclaration de fonction. Bien sûr, il existe de nombreuses façons de faire croire au moteur Javascript qu'il s'agit d'une expression :
!function(){}(); +function(){}(); -function(){}(); ~function(){}(); new function(){ /* code */ } new function(){ /* code */ }() // 只有传递参数时,才需要最后那个圆括号。 ……
Retour à la question précédente, pourquoi dit-on que IIFE évite de polluer les variables globales Si vous avez vu des plug-ins jquery écrits par d'autres, là ? est généralement un code similaire à celui-ci :
(function($){ " //插件实现代码 })(jQuery);
Le jquery ici est en fait le paramètre de la fonction anonyme. Pensez-y lorsque nous appelons la fonction anonyme, nous utilisons f(), alors le paramètre anonyme est f(args ). C'est vrai, ici jquery est passé dans la fonction en tant que paramètre, puis lorsque le paramètre formel $ est utilisé à l'intérieur de la fonction, cela n'affectera pas l'environnement externe, car certains les plug-ins utilisent également le qualificatif $. Vous pouvez le lancer librement.
Recommandations associées :
Fonction d'exécution immédiate dans JS
Trois façons différentes d'écrire du JavaScript à exécution immédiate function_javascript Conseils
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

La technologie de détection et de reconnaissance des visages est déjà une technologie relativement mature et largement utilisée. Actuellement, le langage d'application Internet le plus utilisé est JS. La mise en œuvre de la détection et de la reconnaissance faciale sur le front-end Web présente des avantages et des inconvénients par rapport à la reconnaissance faciale back-end. Les avantages incluent la réduction de l'interaction réseau et de la reconnaissance en temps réel, ce qui réduit considérablement le temps d'attente des utilisateurs et améliore l'expérience utilisateur. Les inconvénients sont les suivants : il est limité par la taille du modèle et la précision est également limitée ; Comment utiliser js pour implémenter la détection de visage sur le web ? Afin de mettre en œuvre la reconnaissance faciale sur le Web, vous devez être familier avec les langages et technologies de programmation associés, tels que JavaScript, HTML, CSS, WebRTC, etc. Dans le même temps, vous devez également maîtriser les technologies pertinentes de vision par ordinateur et d’intelligence artificielle. Il convient de noter qu'en raison de la conception du côté Web

Outils essentiels pour l'analyse boursière : découvrez les étapes pour dessiner des graphiques en bougies en PHP et JS. Des exemples de code spécifiques sont nécessaires. Avec le développement rapide d'Internet et de la technologie, le trading d'actions est devenu l'un des moyens importants pour de nombreux investisseurs. L'analyse boursière est une partie importante de la prise de décision des investisseurs, et les graphiques en bougies sont largement utilisés dans l'analyse technique. Apprendre à dessiner des graphiques en bougies à l'aide de PHP et JS fournira aux investisseurs des informations plus intuitives pour les aider à prendre de meilleures décisions. Un graphique en chandeliers est un graphique technique qui affiche les cours des actions sous forme de chandeliers. Il montre le cours de l'action

WebSocket et JavaScript : technologies clés pour réaliser des systèmes de surveillance en temps réel Introduction : Avec le développement rapide de la technologie Internet, les systèmes de surveillance en temps réel ont été largement utilisés dans divers domaines. L'une des technologies clés pour réaliser une surveillance en temps réel est la combinaison de WebSocket et de JavaScript. Cet article présentera l'application de WebSocket et JavaScript dans les systèmes de surveillance en temps réel, donnera des exemples de code et expliquera leurs principes de mise en œuvre en détail. 1. Technologie WebSocket

Avec le développement rapide de la finance sur Internet, l'investissement en actions est devenu le choix de plus en plus de personnes. Dans le trading d'actions, les graphiques en bougies sont une méthode d'analyse technique couramment utilisée. Ils peuvent montrer l'évolution des cours des actions et aider les investisseurs à prendre des décisions plus précises. Cet article présentera les compétences de développement de PHP et JS, amènera les lecteurs à comprendre comment dessiner des graphiques en bougies boursières et fournira des exemples de code spécifiques. 1. Comprendre les graphiques en bougies boursières Avant de présenter comment dessiner des graphiques en bougies boursières, nous devons d'abord comprendre ce qu'est un graphique en bougies. Les graphiques en chandeliers ont été développés par les Japonais

Tutoriel JavaScript : Comment obtenir le code d'état HTTP, des exemples de code spécifiques sont requis Préface : Dans le développement Web, l'interaction des données avec le serveur est souvent impliquée. Lors de la communication avec le serveur, nous devons souvent obtenir le code d'état HTTP renvoyé pour déterminer si l'opération a réussi et effectuer le traitement correspondant en fonction de différents codes d'état. Cet article vous apprendra comment utiliser JavaScript pour obtenir des codes d'état HTTP et fournira quelques exemples de codes pratiques. Utilisation de XMLHttpRequest

La relation entre js et vue : 1. JS comme pierre angulaire du développement Web ; 2. L'essor de Vue.js en tant que framework front-end ; 3. La relation complémentaire entre JS et Vue ; Vue.

Golang est un langage de programmation puissant et efficace qui peut être utilisé pour développer diverses applications et services. Dans Golang, les pointeurs sont un concept très important, qui peut nous aider à exploiter les données de manière plus flexible et plus efficace. La conversion de pointeur fait référence au processus d'opérations de pointeur entre différents types. Cet article utilisera des exemples spécifiques pour découvrir les meilleures pratiques de conversion de pointeur dans Golang. 1. Concepts de base Dans Golang, chaque variable a une adresse, et l'adresse est l'emplacement de la variable en mémoire.

Introduction à la méthode d'obtention du code d'état HTTP en JavaScript : Dans le développement front-end, nous devons souvent gérer l'interaction avec l'interface back-end, et le code d'état HTTP en est une partie très importante. Comprendre et obtenir les codes d'état HTTP nous aide à mieux gérer les données renvoyées par l'interface. Cet article explique comment utiliser JavaScript pour obtenir des codes d'état HTTP et fournit des exemples de code spécifiques. 1. Qu'est-ce que le code d'état HTTP ? Le code d'état HTTP signifie que lorsque le navigateur lance une requête au serveur, le service
