Maison > Article > interface Web > qu'est-ce que la variable javascript
var est un mot-clé intégré en JavaScript, utilisé pour déclarer une variable et éventuellement l'initialiser à une valeur ; le format de syntaxe est "var varname [=value];", la valeur du paramètre peut être n'importe quelle valeur légale. expression, la valeur par défaut est « indéfini ».
L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur Dell G3.
Déclarer (créer) des variables JavaScript
Créer une variable en JavaScript s'appelle « déclarer » une variable.
Vous pouvez déclarer des variables JavaScript via le mot-clé var
; l'instruction var déclare une variable et l'initialise éventuellement à une valeur :
var varname1 [= value1] [, varname2 [= value2] ... [, varnameN [= valueN]]];
varname : Nom de la variable. Les noms de variables peuvent être définis comme n’importe quel identifiant légal.
valeur : valeur d'initialisation de la variable. La valeur peut être n'importe quelle expression juridique. La valeur par défaut n'est pas définie.
Explication :
Les déclarations de variables, où qu'elles se produisent, sont traitées avant l'exécution de tout code. La portée d'une variable déclarée avec var est son contexte d'exécution actuel, qui peut être une fonction imbriquée, ou globalement pour les variables déclarées en dehors de toute fonction. Si vous redéclarez une variable JavaScript, elle ne perdra pas sa valeur.
Lors de l'affectation à une variable non déclarée, une fois l'affectation effectuée, la variable sera implicitement créée en tant que variable globale (elle deviendra une propriété de l'objet global).
Exemple :
1. Déclarez et initialisez deux variables :
var a = 0, b = 0;
Attribuez les deux variables à des valeurs de chaîne :
var a = "A"; var b = a; // 等效于: var a, b = a = "A";
Notez l'ordre :
var x = y, y = 'A'; console.log(x + y); // undefinedA
Ici, x et y sont créés avant l'exécution du code, et l'affectation a lieu après la création. Lorsque "x = y" est exécuté, y existe déjà, donc aucune ReferenceError n'est levée et sa valeur est "indéfinie". Ainsi, x reçoit la valeur indéfinie. Ensuite, y se voit attribuer « A ». Ainsi, après avoir exécuté la première ligne, x === undefined && y === 'A'
a produit ce résultat.
[Recommandations associées : Tutoriel d'apprentissage javascript]
La différence entre les variables déclarées et non déclarées est :
1. La portée d'une variable déclarée est limitée au contexte de son emplacement de déclaration, alors qu'une variable non déclarée est toujours globale.
function x() { y = 1; // 在严格模式(strict mode)下会抛出 ReferenceError 异常 var z = 2; } x(); console.log(y); // 打印 "1" console.log(z); // 抛出 ReferenceError: z 未在 x 外部声明
2. Les variables déclarées sont créées avant l'exécution de tout code, tandis que les variables non déclarées ne sont créées que lorsque les opérations d'affectation sont effectuées.
console.log(a); // 抛出ReferenceError。 console.log('still going...'); // 打印"still going..."。 Copy to Clipboard var a; console.log(a); // 打印"undefined"或""(不同浏览器实现不同)。 console.log('still going...'); // 打印"still going..."。
3. Les variables déclarées sont des attributs non configurables du contexte dans lequel elles se trouvent, tandis que les variables non déclarées sont configurables (par exemple, les variables non déclarées peuvent être supprimées).
var a = 1; b = 2; delete this.a; // 在严格模式(strict mode)下抛出TypeError,其他情况下执行失败并无任何提示。 delete this.b; console.log(a, b); // 抛出ReferenceError。 // 'b'属性已经被删除。
En raison de ces trois différences, le fait de ne pas déclarer une variable entraînera très probablement des résultats inattendus. Par conséquent, il est recommandé de toujours déclarer les variables, qu’elles se trouvent à l’intérieur d’une fonction ou d’une portée globale. De plus, en mode strict ECMAScript 5, l'affectation à une variable non déclarée génère une erreur.
Pour plus de connaissances sur la programmation, veuillez visiter : Vidéo de 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!