Maison >interface Web >js tutoriel >Explication de la promotion et de la fermeture des fonctions et variables js

Explication de la promotion et de la fermeture des fonctions et variables js

小云云
小云云original
2018-03-14 10:24:301484parcourir

Cet article partage principalement avec vous deux points de connaissances importants, la promotion des fonctions et des variables et l'explication détaillée du principe et de l'utilisation des fermetures. J'espère qu'il pourra aider tout le monde.

Promotion des fonctions et variables

Principe : La déclaration des fonctions et des variables sera promue en haut de la fonction.
Résultat : les variables et les fonctions prennent en charge l'essai avant la déclaration
Cas :

//变量提升x = 5; 
// 变量 x 设置为 5alert(x);var x; 
// 声明 x//函数提升print(5); 
//调用函数function print(y) 
{ //声明函数    return y * y;}

Fermeture

Principe : Imbriquer une autre fonction dans une fonction (l'autre fonction est une fermeture)
Résultat :

  1. Il n'y a pas de variables statiques dans js, vous pouvez utiliser local variables déclarées dans une fonction en tant que variables locales

  2. Comment garantir que les variables locales ne sont appelées qu'une seule fois, vous pouvez utiliser l'affectation de variable, c'est-à-dire que le premier appel est le plus Pour les fonctions externes, les fermetures sont appelées plus tard

  3. pour empêcher d'autres fonctions de les modifier (d'autres fonctions peuvent modifier les variables globales à volonté)

Cas :

function count() 
{    var counter = 0;        
return function ()     
{return counter += 1;}}
var add= count();add();
add();//值为二

Recommandations associées :

Exemple de la façon de déterminer l'existence de fonctions et de variables en JavaScript Explication détaillée du code

Résumé des connaissances de base en JavaScript (10) Fermetures, fonctions d'exécution immédiate

Fermetures en JavaScript

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!

Déclaration:
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