Pour tout programme JavaScript, lorsque le programme commence à s'exécuter, l'interpréteur JavaScript initialise un objet global pour le programme à utiliser. Les fonctions des objets globaux fournis par ce javascript lui-même comprennent:
1. L'objet global a certaines valeurs de propriété couramment utilisées. Comme non définis, infinité et nan.
2. L'objet global a des objets d'attribut couramment utilisés. Par exemple, les objets mathématiques, json et nombres sont tous des propriétés de l'objet global.
3. L'objet global fournit quelques fonctions globales pour l'appel. Par exemple, isnan (), isfinite (), parseInt () et eval (), etc.
4. L'objet global fournit certains constructeurs mondiaux, c'est-à-dire des classes mondiales. Par exemple, date (), regexp (), string (), object () et array ().
En plus des objets mondiaux JS, il existe un autre objet global pour les programmes JavaScript en cours d'exécution du navigateur: fenêtre. L'objet Global Window fournit de nombreux attributs et méthodes liés à la fenêtre et à la page actuelles. En plus de ces propriétés et méthodes globales liées au navigateur, l'objet Window encapsule également les objets globaux JS et expose les propriétés et les interfaces des objets globaux JS à l'extérieur; Par conséquent, lorsque vous effectuez une programmation JavaScript côté navigateur, il vous suffit de vous soucier des objets globaux de fenêtre.
Pour cela dans un programme JavaScript, si cela n'appartient à aucune fonction, cela fait référence à l'objet global JS; S'il s'agit d'un programme JS fonctionnant sur le navigateur, cela fait référence à l'objet global de fenêtre.
Si cela appartient à une fonction, cela fait référence à l'objet qui appelle la fonction. Si la fonction n'est qu'une fonction ordinaire dans ce cas, pas une méthode d'une certaine classe, il y a deux possibilités pour cette référence:
1. Sous le mode non strict de la norme ECMAScript 3 et de la norme ECMAScript 5, cela fait référence à l'objet global.
2. Sous le mode strict de la norme ECMAScript 5, cela se réfère à un non-défini.
Sur la base de cette fonctionnalité, vous pouvez utiliser le code suivant pour déterminer si vous êtes actuellement en mode strict:
La copie de code est la suivante:
var strict = (function () {return! this;} ());
Si une variable globale est créée dans un programme JavaScript, cette variable globale devient une propriété dans l'objet global.
expérience
La copie de code est la suivante:
var a = this;
console.log (a); // objet de fenêtre
console.log (a.outerwidth); // Access Window Object Attribut
console.log (a.isnan); // Accès à l'attribut de l'objet global js
x = "test";
console.log (ax); // accéder à une valeur de variable globale nouvellement créée