웹 개발 (Frontend Developer)/JavaScript
네이티브 객체 (Native Object) vs 호스트 객체 (Host Object)
Jackykim
2024. 9. 22. 17:46
<네이티브 객체>
네이티브 자바스크립트 객체는 자바스크립트 자체에서 제공하는 표준 자바스크립트 객체입니다. 이러한 객체들은 내장 객체, 사전 정의된 객체, 또는 전역 객체라고도 불립니다. ECMAScript 명세에서 의미론적인 부분을 완전히 정의해 놓은 객체들입니다. 하단에 객체 예 시들를 나열했습니다.
- Object
- Date
- String()
- Math
- parseInt
- eval
- indexOf
<호스트 객체>
호스트 자바스크립트 객체는 환경에 따라 달라지는 자바스크립트 객체로, 자바스크립트가 실행되는 기기의 환경에 따라 다를 수 있습니다. 한 환경에서 제공되는 객체가 다른 환경에서는 존재하지 않을 수도 있습니다. 호스트 객체는 ECMAScript 실행 환경을 완성하기 위해 호스트 환경 (브라우저, 서버) 에서 제공되는 객체를 의미합니다.
- window
- document
- location
-XMLHttpRequest
- setTimeout
- querySelectorAll
<정리 (둘 객체의 차이점)>
네이티브 객체 | 호스트 객체 |
자바스크립트 자체에서 제공되는 표준 전역 자바스크립트 객체로, 동일한 방식으로 동작합니다 | 객체들은 호스트(환경) 별로 특정한 자바스크립트 객체로, 환경마다 다릅니다 |
객체들은 전역적으로 모든 사용자에게 제공됩니다 | 한 환경에서 제공되는 객체가 다른 환경에서는 존재하지 않을 수 있습니다 |
String(), Array(), Number(), Date, 등 | window, console, navigator, document, 등 |
참고 :
https://www.geeksforgeeks.org/what-is-the-difference-between-host-objects-and-native-objects/