Middle
Aký je rozdiel medzi host-objektmi a natívnymi objektmi v JavaScripte?
sobes.tech AI
Odpoveď od AI
Vnútorné objekty sú vstavané objekty definované štandardom ECMAScript. Sú súčasťou samotného jazyka JavaScript.
Host-objekty sú objekty poskytované prostredím na vykonávanie JavaScriptu (prehliadač, Node.js). Nie sú súčasťou štandardu ECMAScript, ale sú dostupné v danom prostredí.
Príklady:
- Vnútorné objekty:
Object,Array,Function,String,Number,Boolean,Date,RegExp,Map,Set,Promise,Math,JSON. - Host-objekty (v prehliadači):
window,document,console,XMLHttpRequest,setTimeout,DOM prvky(napríkladHTMLElement).
Hlavné rozdiely:
| Kritérium | Vnútorné objekty | Host-objekty |
|---|---|---|
| Definované štandardom | Áno (ECMAScript) | Nie (prostredie na vykonávanie) |
| Dostupnosť | Dostupné v akomkoľvek prostredí podporujúcom ECMAScript | Závisí od konkrétneho prostredia na vykonávanie |
| Príklady | Array, Object, String |
window, document, console (v prehliadači) |
| Hlavná úloha | Základné stavebné kamene jazyka | Interakcia s prostredím (prehliadač, OS a pod.) |
Navyše:
- Host-objekty môžu mať vlastnosti a metódy, ktoré sa líšia alebo dokonca chýbajú v rôznych prostrediach.
- Správanie host-objektov nemusí byť úplne štandardizované, zatiaľ čo správanie vnútorných objektov je jasne opísané v špecifikácii ECMAScript.