Sobes.tech
Middle

Ի՞նչ է JavaScript-ում հյուրընկալ օբյեկտների և բնօրինակ օբյեկտների տարբերությունը։

sobes.tech AI

Պատասխան AI-ից

Նատիվ օբյեկտները ներառված օբյեկտներ են, որոնք սահմանված են ECMAScript ստանդարտով։ Դրանք JavaScript լեզվի մաս են։

Հոսթ-օբյեկտները օբյեկտներ են, որոնք տրամադրում է JavaScript-ի գործարկման միջավայրը (բրաուզեր, Node.js): Դրանք ECMAScript ստանդարտի մաս չեն, բայց հասանելի են այդ միջավայրում։

Օրինակներ:

  • Նատիվ օբյեկտներ: Object, Array, Function, String, Number, Boolean, Date, RegExp, Map, Set, Promise, Math, JSON։
  • Հոսթ-օբյեկտներ (բրաուզերում): window, document, console, XMLHttpRequest, setTimeout, DOM տարրեր (օրինակ, HTMLElement

Հիմնական տարբերությունները:

Քննտրություն Նատիվ օբյեկտներ Հոսթ-օբյեկտներ
Ստանդարտով սահմանված Այո (ECMAScript) Ոչ (գործարկման միջավայր)
Հասանելիություն Հասանելի է ցանկացած միջավայրում, որը աջակցում է ECMAScript-ին Զависит կոնկրետ գործարկման միջավայրից
Օրինակներ Array, Object, String window, document, console (բրաուզերում)
Հիմնական դեր Բազային կառուցվածքային տարրեր լեզվի համար Միջավայրի հետ փոխազդեցություն (բրաուզեր, օպերացիոն համակարգ և այլն)

Ավելին:

  • Հոսթ-օբյեկտները կարող են ունենալ հատկություններ և մեթոդներ, որոնք տարբեր միջավայրերում տարբեր են կամ նույնիսկ բացակայում են:
  • Հոսթ-օբյեկտների վարքը կարող է չլինել լիովին ստանդարտացված, մինչդեռ նատիվ օբյեկտների վարքը հստակ նկարագրված է ECMAScript ստանդարտում։