Ce chapitre vous présentera ce que sont var, let et const en JavaScript ? Utilisation de var, let, const (code). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il vous sera utile.
1. var
est une variable globale déclarée dans la fenêtre globale et est un attribut de la fenêtre objet globale.
var sum = 0 console.log(window.sum) // 0 console.log(sum); // 0
Les variables déclarées dans la fonction sont des variables locales
function foo(){ function bar(a){ i = 3; console.log( a + i ); // 3 之后是无限循环11 } var i = 0 for( i ; i <= 10; i++){ bar( i * 2 ) } } foo()
Ce code peut s'écrire comme ceci
function foo(){ function bar(a){ i = 3; console.log( a + i ); } var i i = 0 for( i ; i <= 10; i++){ bar( i * 2 ) } } foo()
La promotion de la fonction précède la promotion des variables, Après en entrant dans la boucle for, définissez le paramètre de la fonction bar sur 0, de sorte que la première sortie soit imprimée comme 3. L'accent est mis sur cet endroit i = 3. Il recherchera la déclaration de i dans la portée actuelle. Sinon, il suivra la chaîne de portée. Recherchez vers le haut et trouvez-le dans foo, donc i dans foo devient 3. Après avoir exécuté i++, nous obtenons i= 4. Lorsque nous exécutons bar, nous obtenons le 11 suivant. Cela continue de boucler
2. Let et const
ES6 sont deux nouvelles façons de déclarer des variables. La déclaration répétée de la même variable dans la même portée n'est pas autorisée. Il n'y a pas de promotion de variable
Comme il n'y a pas de promotion de variable, cette variable ne peut pas être utilisée avant que la variable ne soit déclarée avec var. sera soumis à une promotion variable. , mais la valeur n'est pas définie
Dans ES5, seules les fonctions ont une portée au niveau du bloc, mais dans ES6, il n'y a pas seulement une portée de fonction. C'est grâce à let et const<🎜. >
var b = 1; { let b = 2; } console.log(b); // 1
var a = [] for(let i=0; i<10;i++){ a[i] = function(){ console.log(i); }; console.log(i) //[function,function..] 总共10个 } console.log(a) a[8]() // 8
const a = {} a.name = 'circle' console.log(a); // Object {name: "circle"}
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!