>  기사  >  웹 프론트엔드  >  BOM_자바스크립트 기본 지식

BOM_자바스크립트 기본 지식

WBOY
WBOY원래의
2016-05-16 15:02:411295검색

자바스크립트 BOM

ECMAScript는 JavaScript의 핵심이지만 웹에서 JavaScript를 사용하려면 의심할 여지 없이 BOM(Browser Object Model)이 진짜 핵심입니다. BOM은 웹 페이지 콘텐츠와 독립적인 브라우저 기능에 액세스하기 위한 여러 개체를 제공합니다. 수년에 걸쳐 사실상의 사양이 부족하여 BOM이 흥미롭기도 하고 문제가 되기도 했습니다. 브라우저 공급업체가 적합하다고 생각하는 대로 BOM을 자유롭게 확장해 왔기 때문입니다. 결과적으로 브라우저 간에 공유되는 객체는 사실상의 표준이 됩니다. 이러한 객체는 주로 브라우저와의 상호 운용성을 제공하기 때문에 브라우저에 존재합니다. 브라우저에서 JavaScript의 가장 기본적인 부분을 표준화하기 위해 W3C는 BOM의 주요 측면을 HTML5 사양에 통합했습니다.

ps: 위 내용은 "Javascript Advanced 프로그래밍"에서 발췌한 것입니다. BOM은 브라우저의 윈도우 객체이며 다양한 윈도우 처리 API를 제공합니다. 점점 더 많은 웹앱 프레임워크를 사용하면 동일한 창에서 다양한 페이지와 다양한 Ajax 데이터를 처리해야 하며 BOM의 내용에 익숙해져야 합니다.

1. 창

BOM의 핵심 객체는 브라우저의 인스턴스를 나타내는 window입니다. 브라우저에서 창 개체는 JavaScript를 통해 브라우저 창에 액세스하기 위한 인터페이스이자 ECMAScript에서 지정한 전역 개체라는 이중 역할을 갖습니다.

다음은 open의 세 번째 문자열 속성입니다

2. 위치

위치는 가장 유용한 BOM 개체 중 하나이며 현재 창에 로드된 문서에 대한 정보를 제공하고 일부 탐색 기능도 제공합니다. 실제로 위치 개체는 창 개체의 속성이자 문서 개체의 속성이기 때문에 매우 특별한 개체입니다. 즉, window.location과 document.location은 동일한 개체를 참조합니다. 위치 개체의 유용성은 현재 문서에 대한 정보를 저장할 뿐만 아니라 URL을 독립적인 조각으로 구문 분석하여 개발자가 다양한 속성을 통해 이러한 조각에 액세스할 수 있도록 한다는 것입니다.

3. 역사
기록 개체는 창이 열린 순간부터 시작하여 사용자의 온라인 기록을 저장합니다.

기록은 창 개체

의 속성이므로 각 브라우저 창, 각 탭, 심지어 각 프레임에도 특정 창 개체와 연결된 고유한 기록 개체가 있습니다. 보안상의 이유로 개발자는 사용자가 어떤 URL을 보았는지 알 수 없습니다. 그러나 사용자가 방문한 페이지 목록을 사용하면 실제 URL을 모르더라도 앞뒤로 이동할 수도 있습니다.

4. 네비게이터


Netscape Navigator 2.0에서 처음 도입된 navigator 개체는 이제 클라이언트 브라우저를 식별하기 위한 사실상의 표준이 되었습니다. 다른 브라우저는 다른 방식으로 동일하거나 유사한 정보를 제공하지만(예: IE의 window.clientInfor-mation 및 Opera의 indow.opera) navigator 객체는 JavaScript를 지원하는 모든 브라우저에 공통됩니다. 다른 BOM 객체의 경우와 마찬가지로 각 브라우저의 navigator 객체에도 고유한 속성 집합이 있습니다. 아래 그림에는 네비게이터에 대한 더 중요한 정보가 포함되어 있습니다

5. 화면

JavaScript에는 프로그래밍에 거의 사용되지 않는 여러 개체가 있는데, 화면 개체가 그 중 하나입니다. 화면 개체는 기본적으로 픽셀 너비 및 높이와 같은 브라우저 창 외부 디스플레이에 대한 정보를 포함하는 클라이언트의 기능을 나타내는 데 사용됩니다. 각 브라우저의 화면 개체에는 다양한 속성이 포함되어 있습니다. 다음 표에는 모든 속성과 해당 속성을 지원하는 브라우저가 나열되어 있습니다. 다음 코드를 사용하여 확인하세요


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