Pouvez-vous parler de la différence entre Global Object et Global Objects en JavaScript ?

Feb 23 2023
Avant de répondre à la question, examinons les objets en JavaScript. En termes simples, un objet est une structure de données qui comprend des données et des fonctions.
Salut, je m'appelle Hardy.

Avant de répondre à la question, examinons les objets en JavaScript.

En termes simples, un objet est une structure de données qui comprend des données et des fonctions.

Généralement, un objet est appelé quelque chose alloué en mémoire en fonction de sa définition dans une classe, mais dans ECMAScript, les objets ne sont pas fondamentalement basés sur des classes. Au lieu de cela, ils sont créés par des constructeurs avec une propriété appelée prototype.

En JavaScript, les objets peuvent être divisés en différents types.

Les objets intégrés sont des objets définis dans la spécification ECMAScript. Par conséquent, ils fournissent des fonctionnalités communes à l'ensemble de l'application et ne sont pas fortement influencés par l'environnement d'exécution JavaScript, ce qui les rend disponibles à tout moment. Les exemples incluent Math, Date, Chaîne, Tableau, Objet, Fonction, etc.

Les objets hôtes sont des objets définis dans l'environnement hôte, en termes simples. Les environnements hôtes tels que les navigateurs Web et Node.js fournissent des objets et des fonctions spécifiques à la plate-forme en plus d'ECMAScript. Les exemples dans les navigateurs Web incluent la fenêtre, le document, XMLHttpRequest, l'image, l'audio, etc.

Les objets définis par l'utilisateur font référence aux objets que les développeurs définissent eux-mêmes. Ils peuvent être définis à l'aide de littéraux d'objets, de fonctions constructeurs, de classes, etc.

Quant à la question de savoir si Global Object et Global Objects signifient la même chose ou non, la réponse est différente.

Les objets globaux sont les objets intégrés mentionnés précédemment.

L'objet global est souvent intégré au langage ou à l'environnement hôte.

Dans un environnement de navigateur, l'objet global s'appelle "window", tandis que dans un environnement Node.js, il s'appelle "global", bien que les noms puissent différer selon l'environnement hôte.

Pour votre information, il existe également un contenu qui normalise le nom de l'objet global en globalThis. (Découvrez-le sur MDN )

Objet global et objets globaux ont des significations différentes, veillez donc à ne pas les confondre.

N'hésitez pas à corriger toute idée fausse ou à partager vos connaissances sur ce sujet !