Maison >interface Web >js tutoriel >Portée de la fonction JavaScript : comprendre la portée des variables
Portée de la fonction JavaScript : pour comprendre la portée des variables, des exemples de code spécifiques sont nécessaires
Introduction :
En JavaScript, la portée de la fonction fait référence à la portée visible de la variable dans la fonction. Comprendre la portée des fonctions est l'un des fondements de la maîtrise du langage JavaScript. Cet article commencera par les concepts et expliquera le concept et l'utilisation de la portée des fonctions à travers des exemples de code spécifiques.
1. Qu'est-ce que la portée de la fonction ?
La portée de la fonction fait référence à la plage visible de variables dans la fonction. En d’autres termes, la portée d’une variable est limitée à la fonction dans laquelle elle est déclarée. Les variables à l’intérieur d’une fonction ne sont pas accessibles depuis l’extérieur de la fonction.
2. Variables locales et variables globales
En JavaScript, les variables peuvent être des variables locales (déclarées à l'intérieur d'une fonction) ou des variables globales (déclarées en dehors d'une fonction).
function myFunction() { var localVar = "局部变量"; console.log(localVar); //输出"局部变量" } myFunction(); console.log(localVar); //报错,无法访问局部变量
Dans l'exemple ci-dessus, localVar
est une variable locale dont la portée est limitée à l'intérieur de la fonction myFunction
. La variable localVar
n'est pas accessible en dehors de la fonction. localVar
是一个局部变量,作用范围仅限于myFunction
函数内部。在函数外部无法访问localVar
变量。
var globalVar = "全局变量"; function myFunction() { console.log(globalVar); //输出"全局变量" } myFunction(); console.log(globalVar); //输出"全局变量"
在上面的示例中,globalVar
是一个全局变量,所以它可以在函数内部和外部被访问到。
三、函数作用域链
function outerFunction() { var outerVar = "外部函数变量"; function innerFunction() { var innerVar = "内部函数变量"; console.log(innerVar); //输出"内部函数变量" console.log(outerVar); //输出"外部函数变量" } innerFunction(); } outerFunction();
在上面的示例中,innerFunction
函数位于outerFunction
函数内部。innerFunction
函数可以访问自身的变量innerVar
,以及外部函数的变量outerVar
。
四、变量提升
在JavaScript中,变量声明会被提升到函数作用域的顶部。这意味着可以在变量声明之前使用变量。例如:
function myFunction() { console.log(myVar); //输出"undefined" var myVar = "被提升的变量"; console.log(myVar); //输出"被提升的变量" } myFunction();
在上面的示例中,myVar
Les variables globales sont des variables déclarées en dehors de la fonction et sont accessibles à la fois à l'intérieur et à l'extérieur de la fonction. Par exemple :
globalVar
est une variable globale, elle est donc accessible à la fois à l'intérieur et à l'extérieur de la fonction. 🎜🎜3. Chaîne de portée de fonction🎜🎜🎜Comprendre la chaîne de portée🎜En JavaScript, les fonctions peuvent être imbriquées dans la définition (c'est-à-dire que les fonctions peuvent être définies dans les fonctions), ce qui forme une chaîne de portée. Le concept de chaîne de portée signifie que chaque fonction peut accéder à ses propres variables, ainsi qu'à des fonctions externes et des variables globales. Par exemple : 🎜🎜rrreee🎜Dans l'exemple ci-dessus, la fonction innerFunction
se trouve à l'intérieur de la fonction outerFunction
. La fonction innerFunction
peut accéder à sa propre variable innerVar
, ainsi qu'à la variable outerVar
de la fonction externe. 🎜myVar
est promue en haut de la portée de la fonction, elle peut donc être utilisée avant que la variable ne soit déclarée. 🎜🎜Conclusion : 🎜La portée de la fonction est l'un des concepts très importants en JavaScript. Comprendre la portée des fonctions peut nous aider à mieux contrôler la portée des variables et à éviter les conflits de noms et les accès incorrects aux variables. Cet article présente le concept et l'utilisation de la portée des fonctions à travers des exemples de code spécifiques, notamment des variables locales et globales, le chaînage de portées et la promotion de variables. J'espère que les lecteurs pourront approfondir leur compréhension de la portée des fonctions JavaScript et améliorer leurs compétences en codage. 🎜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!