>  기사  >  웹 프론트엔드  >  자바스크립트 호스트 객체와 내장 객체의 차이점은 무엇입니까

자바스크립트 호스트 객체와 내장 객체의 차이점은 무엇입니까

WBOY
WBOY원래의
2022-03-10 16:51:421941검색

차이점: 1. 내장 객체는 기본 객체의 하위 집합이며 기본 객체에 속하지만 호스트 객체는 엔진의 기본 객체가 아닙니다. 2. 내장 객체는 ECMAScript 구현에 의해 제공되는 모든 객체입니다. 호스트 환경인 반면, 호스트 객체는 ECMAScript 공식적으로 정의되지 않은 객체입니다.

자바스크립트 호스트 객체와 내장 객체의 차이점은 무엇입니까

이 튜토리얼의 운영 환경: Windows 10 시스템, JavaScript 버전 1.8.5, Dell G3 컴퓨터.

JavaScript 호스트 객체와 내장 객체의 차이점은 무엇인가요?

네이티브 객체에는 내장 객체(JavaScript 엔진이 초기화될 때 생성되는 객체)와 JavaScript 실행 중에 동적으로 생성되는 객체가 포함되지만, 호스트 객체는 JavaScript 엔진이 실행될 때 생성되는 개체입니다. JavaScript 호스트 환경(런타임 환경)은 일부 메커니즘을 통해 JavaScript 엔진에 개체를 주입합니다. 엔진 초기화 단계에서 항상 생성됩니다. 네이티브 개체의 하위 집합입니다. 내장 객체는 EcmaScript에서 제공되며 전역 및 수학(숫자 객체) 및 내장 객체를 포함한 호스트 객체와 독립적입니다.

Native(Naitve) 객체: 내장 객체 외에도 일부 객체도 포함됩니다. 런타임 중에 동적으로 생성됩니다. 기본 개체는 Object, Array, Function, Number, String, Date

를 포함하여 호스트 환경에 독립적입니다. 호스트 개체: 호스트 개체는 엔진의 기본 개체가 아니라 호스트 프레임워크에 의해 JavaScript 엔진에 등록된 개체입니다. 어떤 메커니즘을 통해. Javascipt의 실행 환경은 BOM과 DOM이라는 두 가지 유형의 호스트 객체를 포함하는 운영 체제와 브라우저입니다. 1. 네이티브 객체

ECMA-262는 네이티브 객체를 "호스트 환경에 독립적인 ECMAScript 구현에 의해 제공되는 객체"로 정의합니다. ".

            포함: 개체, 함수, 배열, 문자열, 부울, 숫자, 날짜, RegExp, 오류, EvalError, RangeError, ReferenceError, SyntaxError, TypeError, URIError, ActiveXObject(서버), Enumerator(컬렉션 순회 클래스), RegExp(정규 표현식) )

2. 내장 객체

ECMA-262는 내장 객체를 “호스트 환경에 독립적이고 ECMAScript 프로그램이 실행을 시작할 때 나타나는 ECMAScript 구현에 의해 제공되는 모든 객체”로 정의합니다. 이는 개발자가 내장 개체를 명시적으로 인스턴스화할 필요가 없으며 이미 인스턴스화되었음을 의미합니다.

또한 "호스트 환경에 독립적"입니다. ECMA-262는 Global과 Math라는 두 가지 내장 개체만 정의합니다(이 둘은 기본 개체이기도 합니다. 정의에 따르면 모든 내장 개체는 기본 개체입니다).

3. 호스트 개체

"호스트"란 무엇입니까? 물체"? ECMAScript의 "호스트"는 물론 웹 페이지의 실행 환경, 즉 "운영 체제"와 "브라우저"입니다.

          BOM과 DOM은 모두 호스트 개체입니다. 다른 "호스트" 환경에 대해 다른 내용을 표시하기 때문입니다. 사실, 직설적으로 말하면 ECMAScript의 공식적으로 정의되지 않은 객체는 호스트 객체에 속합니다. 왜냐하면 정의되지 않은 객체의 대부분은 ECMAScript 프로그램에 의해 생성된 객체이기 때문입니다.

관련 권장 사항: javascript 학습 튜토리얼

위 내용은 자바스크립트 호스트 객체와 내장 객체의 차이점은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.