Middle
Quelle est la différence entre les objets hôtes et les objets natifs en JavaScript?
sobes.tech IA
Réponse de l'IA
Les objets natifs sont des objets intégrés définis par la norme ECMAScript. Ils font partie du langage JavaScript lui-même.
Les objets hôtes sont des objets fournis par l'environnement d'exécution JavaScript (navigateur, Node.js). Ils ne font pas partie de la norme ECMAScript, mais sont accessibles dans cet environnement.
Exemples :
- Objets natifs :
Object,Array,Function,String,Number,Boolean,Date,RegExp,Map,Set,Promise,Math,JSON. - Objets hôtes (dans le navigateur) :
window,document,console,XMLHttpRequest,setTimeout,éléments DOM(par exemple,HTMLElement).
Principales différences :
| Critère | Objets natifs | Objets hôtes |
|---|---|---|
| Définis par la norme | Oui (ECMAScript) | Non (environnement d'exécution) |
| Disponibilité | Disponibles dans tout environnement supportant ECMAScript | Dépendent de l'environnement d'exécution spécifique |
| Exemples | Array, Object, String |
window, document, console (dans le navigateur) |
| Rôle principal | Blocs de construction de base du langage | Interaction avec l'environnement (navigateur, OS, etc.) |
En supplément :
- Les objets hôtes peuvent avoir des propriétés et des méthodes qui diffèrent ou même manquent dans différents environnements.
- Le comportement des objets hôtes peut ne pas être entièrement standardisé, alors que celui des objets natifs est clairement défini dans la spécification ECMAScript.