JavaScript Scope
En JavaScript, les objets et les fonctions sont également des variables.
En JavaScript, la portée est une collection de variables, d'objets et de fonctions accessibles.
Portée de la fonction JavaScript : La portée est modifiée au sein de la fonction.
En JavaScript, les variables déclarées avec var ont en fait une portée.
Si une variable est déclarée à l'intérieur du corps de la fonction, la portée de la variable est l'intégralité du corps de la fonction, et la variable ne peut pas être référencée en dehors du corps de la fonction :
'use strict '; function foo () {
var x = 1;
x = x + 1;
}
x = x + 2; // ReferenceError ! 🎜> en dehors du corps de la fonction
'use strict';function foo() { var x = 1 ;
x = x + 1;
}barre de fonction() {
var x = 'A';
x = x + 'B';
}
// La variable carName ne peut pas être appelée ici
function myFunction() {
var carName = "Volvo";
// La variable carName peut être appelée au sein de la fonction
}
Remarque :
Étant donné que les variables locales n'agissent qu'au sein des fonctions, différentes fonctions peuvent utiliser des variables portant le même nom. Les variables locales sont créées lorsque la fonction commence à s'exécuter, et elles seront automatiquement détruites après l'exécution de la fonction.Portée mondiale
Les variables non définies dans aucune fonction ont une portée globale. En fait, JavaScript a une fenêtre d'objet globale par défaut, et les variables de la portée globale sont en fait liées à une propriété de window :
'use strict';
var course = 'Apprendre JavaScript';
alert(course); // 'Apprendre JavaScript'
alert(window. course); // 'Apprendre JavaScript'
Par conséquent, accéder directement à la variable globale course équivaut exactement à accéder à window.course.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <body> <p>全局变量在任何脚本和函数内均可访问。</p> <p id="demo"></p> <script> var carName = "Volvo"; myFunction(); function myFunction() { document.getElementById("demo").innerHTML = "这里是 " + carName; } </script> </body> </html>
Cycle de vie des variables JavaScript
Le cycle de vie des variables JavaScript est initialisé lorsqu'il est déclaré.
Les variables locales sont détruites après l'exécution de la fonction.
Les variables globales sont détruites après la fermeture de la page.
Paramètres de fonction
Les paramètres de fonction ne fonctionnent qu'au sein de la fonction et sont des variables locales.