Sobes.tech
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íklad HTMLElement).

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.