La portée d'une variable fait référence à la zone du programme où la variable est accessible. Comprendre la portée des variables est crucial pour écrire du code efficace et sans erreur.
Il existe trois types de portées de variables en JavaScript :
var
let
const
var
Mots clésvar
Les mots clés ont été introduits pour la première fois en 1995 avec la version initiale de JavaScript. var
a une portée globale, ce qui signifie que n'importe quelle partie du programme peut accéder à la variable. <code class="language-javascript">var x = 10; function inner() { console.log(x); // 输出:10 } console.log(x); // 输出:10</code>
var
seront promues en haut du fichier. Cela signifie que vous pouvez essayer d'accéder à la variable avant qu'elle ne soit initialisée, mais le résultat sera undefined
car nous n'avons pas encore attribué de valeur à la variable. <code class="language-javascript">console.log(x); // 输出:undefined var x = 10; console.log(x); // 输出:10</code>
let
Mots cléslet
a été introduit en 2015 avec l'introduction d'ECMAScript 6 et fournit la fonctionnalité de cadrage au niveau du bloc. let
ont une portée de bloc. Par conséquent, la variable n'est pas accessible dans d'autres étendues telles que les fonctions ou la portée globale. var
, accéder à une variable déclarée avec let
avant de la déclarer générera une erreur en raison de la Zone morte temporelle (TDZ). <code class="language-javascript">console.log(x); // 输出:引发错误 let x = 10;</code>
<code class="language-javascript">let x = 10; function inner() { console.log(x); // 输出:引发错误 }</code>
const
Mots clésconst
doivent être initialisées sur la même ligne. <code class="language-javascript">const PI = 3.14; console.log(PI); // 输出:3.14</code>
const
, une erreur TypeError: Assignment to constant variable
sera générée lors de l'exécution. <code class="language-javascript">const PI = 3.14; PI = 3.5; // 输出:TypeError: Assignment to constant variable.</code>
Bonne programmation !
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!