Maison > interface Web > js tutoriel > Compréhension populaire des fermetures - 5Clay

Compréhension populaire des fermetures - 5Clay

一个新手
Libérer: 2017-10-09 09:54:50
original
1589 Les gens l'ont consulté

En ce qui concerne les fermetures, cela implique la portée variable de la fonction js, qui est divisée en variables locales et variables globales. Les variables en dehors de la fonction peuvent être lues directement depuis l'intérieur de la fonction, mais les variables à l'intérieur de la fonction ne peuvent pas être lues directement depuis l'extérieur de la fonction.

Mais parfois, nous avons besoin d'obtenir les variables locales de la fonction, donc la fermeture est générée. La fermeture consiste à définir une autre fonction à l'intérieur de la fonction, comme indiqué dans le code suivant :

var foo=(function () {

     var a="11";

     return{
         get_a:function () {
             return a;
         },
         new_a:function (newValue) {
             a=newValue;
         }
     }
} ())
 console.log(foo.a) //输出undefined,因为函数外部不能直接访问内部的局部变量
 console.log(foo.get_a())//输出11
 foo.new_a("我是通过闭包改变的值")//调用并且传参
 console.log(foo.get_a()) //输出我是通过闭包改变的值
Copier après la connexion

De cette façon, nous pouvons obtenir les variables locales à l’intérieur d’une fonction en dehors de celle-ci. Dans la fonction ci-dessus, la fonction à l'intérieur de return est la fermeture.

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!

É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