Maison >interface Web >js tutoriel >Explication détaillée de la déclaration des variables JS
Peu importe où apparaît l'instruction de déclaration de variable JavaScript, elle sera exécutée en premier avant les autres codes. Cet article vous présentera les connaissances liées à la déclaration de variable JavaScript. Les amis intéressés peuvent apprendre ensemble
Peu importe où apparaît une instruction de déclaration de variable JavaScript, elle sera exécutée en premier avant tout autre code. La portée d'une variable déclarée à l'aide du mot-clé varest le contexte d'exécution actuel, qui peut être une fonction périphérique, ou lorsque la variable est déclarée en dehors du corps de la fonction, il s'agit d'une variable globale. Les éléments définis en dehors du corps de la fonction sont des variables globales, et ceux définis à l'intérieur du corps de la fonction sont des variables locales. La définition ici fait référence à la déclaration via var.
JavaScript a le concept de globales implicites, ce qui signifie que toute variable que vous ne déclarez pas deviendra une propriété d'objet globale. Par exemple :
function test(){ myname = "huming"; alert(myname); } test(); // "huming" alert(myname); //"huming"
Alors, y a-t-il une différence entre les variables globales implicites et les variables globales explicitement définies ? . La réponse est définitivement oui, regardez l'exemple suivant :
// 定义三个全局变量 var global_test = ; global_test = ; // 反面教材 (function () { global_test = ; // 反面教材 }()); // 试图删除 delete global_test; // false delete global_test; // true delete global_test; // true // 测试该删除 alert(typeof global_test); // "number" alert(typeof global_test); // "undefined" alert(typeof global_test); // "undefined"
En résumé, les variables globales déclarées via var en dehors de la fonction ne peuvent pas être supprimées, mais les variables globales implicites peuvent être supprimées.
Quelque chose à noter ici : JavaScript a un comportement appelé « levage » (suspension/analyse supérieure/pré-analyse).
Illustrons avec un exemple :
var myname = "huming"; //声明全局变量 function test() { alert(myname); var myname = "local_huming"; alert(myname); } test();
L'exemple ci-dessus est équivalent à
var myname = "huming"; //声明全局变量 function test() { var myname; alert(maname);<br> myname = "local_huming"; alert(myname); // "local" } test();
Cela devrait être clair. Lorsque vous utilisez une variable dans le corps d’une fonction et que vous la déclarez à nouveau ultérieurement, une erreur peut se produire.
Spécifications d'écriture :
function test() { var a = , b = , c = a + b, d = {}, e, f; // function body... }
1. Toutes les variables locales sont définies au début de la fonction, ce qui la rend facile à trouver ;
2. Empêchez les erreurs logiques causées par l'utilisation de variables avant qu'elles ne soient définies.
nom de variable (nom) a quatre façons d'entrer dans la portée (portée) langage intégré, tous là est-ce que this et arguments sont des mots-clés dans la portée
paramètres formels, et
sont valides dans toute la portée
Déclaration de fonction
Déclaration de variable
Les quatre ordres répertoriés ci-dessus sont également l'ordre de
prioritéde haut en bas. Une fois qu'un nom de variable a été déclaré, il ne peut pas être remplacé. par d'autres formulaires de déclaration de variables de moindre priorité.
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!