WINDOW

settings_applicationsEventTarget  >   settings_applicationsWindow

WINDOW

Editing
  • account_tree
  • bug_report

Objectwindow

웹 문서 창을 다루는 자바스크립트가 실행되는 최상위 스코프(scope)를 나타내는 객체이다.

설명

창이 생성되어지면 전역 객체 window가 자동으로 생성이 된다. 이 window는 자바스크립트의 실행 공간을 만들어주며 이것을 전역 공간이라 한다. 그래서 window를 전역 객체라 부른다.

window 전역 객체는 최상위 실행 컨텍스트(context)를 나타낸다. 실행시 다루어지는 모든 데이터들은 window 객체의 멤버가 된다.

전역 객체답게 window[[Prototype]] 멤버를 갖는 것 이외에 다양한 메소드와 프로퍼티들이 기본적으로 만들어진다. window 전역 객체는 코드상에서 생략이 될 수 있다는 것을 염두해 두길 바란다.

기본으로 생성되어 사용되는 관계로 대문자로 시작하는 Window 인터페이스와의 관계에 대해 궁금증을 갖는 경우가 있다. 

Window는 window와 어떤 관계인가?

Windowwindow의 관계를 통상 생성자(constructor)와 인스턴스(instance)로 보고 있다. 다음과 같은 코드가 성립이 되는 것을 보면 분명한 사실이다.

window.constructor === Window // true
window instanceof Window // true

위의 코드를 보면 window의 생성자는 Window이며 windowWindow의 인스턴스가 맞다.

자바스크립트는 생성자에 의해서 인스턴스가 만들어지면 [[Prototype]] 체인이 복사되어 진다. 따라서 Windowwindow에게 동일한 작용을 할 것임을 예상할 수 있다. 추가적으로 최상위 스코프(Scope)를 가진 window 답게 사용되어지는 모든 객체와 함수, 변수등이 자동으로 멤버로 추가되어진다.

하위 트리 탐색

  • Properties

    • caches

      • Methods

        • delete()

          지정된 이름과 일치하는 Cache 객체를 찾아 삭제하고 true로 이행되는 Promies 객체를 반환한다.

        • has()

          지정된 이름과 일치하는 Cache 객체가 있는 경우 true로 이행되는 Promise 객체를 반환한다.

        • keys()

          생성 순서에 따라 Cache 객체에 해당하는 식별 문자열을 원소로 포함한 배열 반복자로 이행하는 Promise 객체를 반환한다.

        • match()

          지정된 요청을 나타내는 Request 객체 또는 URL 문자열이 저장된 Response 객체의 식별값인지 조회한다.

        • open()

          캐시 이름과 일치하는 Cache 객체를 담은 Promise 객체를 반환한다.

    • closed

      참조한 창이 닫혔는지 여부를 불리언(boolean)으로 조회한다.

    • console

      • Methods

        • assert()

          지정된 주장(assertion)에 대하여 결과를 반환한다.

        • clear()

          콘솔(console)이 허용하는 경우 콘솔의 내용을 지운다.

        • count()

          count() 메소드에 대한 특정 호출이 호출된 횟수를 기록한다.

        • countReset()

          Console.prototype.count() 메소드와 함께 사용되는 카운터를 재설정한다.

        • debug()

          "debug" 로그 수준에서 콘솔에 메시지를 출력한다.

        • dir()

          지정된 객체의 프로퍼티 목록을 트리 구조로 표시한다.

        • dirxml()

          지정된 XML/HTML 요소의 하위 요소에 대한 대화형 트리를 표시한다.

        • error()

          "error" 로그 수준에서 콘솔에 메시지를 출력한다.

        • group()

          웹 콘솔 로그에 새 인라인 그룹을 생성하여 Console.prototype.groupEnd() 메소드가 호출될 때까지 후속 콘솔 메시지가 추가 수준으로 들여쓰기 되도록 한다.

        • groupCollapsed()

          콘솔에 새 인라인 그룹을 생성한다. 

        • groupEnd()

          콘솔에서 현재 인라인 그룹을 종료한다.

        • info()

          "info" 로그 수준에서 콘솔에 메시지를 출력한다.

        • log()

          지정된 값을 콘솔에 출력한다.

        • table()

          콘솔에 표 형식으로 데이터를 출력한다.

        • time()

          작업에 소요되는 시간을 추적하는 데 사용할 수 있는 타이머를 시작한다.

        • timeEnd()

          시작된 타이머를 중지한다.

        • timeLog()

          시작된 타이머에 현재의 값을 기록한다.

        • trace()

          스택(stack) 추적을 콘솔에 출력한다.

        • warn()

          "warning" 로그 수준에서 콘솔에 경고 메시지를 출력한다. 

    • cookieStore

      • Methods

        • delete()

          지정된 식별이름 또는 옵션에 따라 쿠키를 제거한다.

        • get()

          지정된 이름 또는 옵션을 가진 단일 쿠키를 반환한다.

        • getAll()

          지정된 이름 또는 옵션을 가진 모든 쿠키 목록을 반환한다.

        • set()

          지정된 이름과 값을 갖거나 옵션으로 지정된 객체를 쿠키로 설정한다.

    • credentialless

      현재 문서가 자격 증명이 없는 <iframe> 내에 로드되었는지 여부를 불리언(boolean)으로 조회한다.

    • crossOriginsolated

      웹사이트가 원본 간 격리 상태에 있는지 여부를 불리언(boolean)으로 나타낸다.

    • crypto

      • Methods

        • getRandomValues()

          강력하게 암호화된  임의 값을 반환한다.

        • randomUUID()

          암호화 보안 난수 생성기를 사용하여 v4 UUID를 생성하여 반환한다.

      • Properties

        • subtle

          하위 수준 암호화 작업을 수행하는 데 사용할 수 있는 SubtleCropty 객체를 참조한다.

    • customElements

      • Methods

        • define()

          새로운 사용자 정의 요소를 정의하여 사용자 정의 요소 레지스터리에 추가하고 생성이 가능하도록 생성자(document.createElement())에 매핑한다.

        • get()

          이전의 사용자 지정 요소의 생성자를 반환한다.

        • getName()

          이전의 사용자 정의 요소의 이름을 반환한다.

        • upgrade()

          섀도우 루트(shadow root)에 연결되기 전에 사용자 정의 요소를 업그레이드 한다.

        • whenDefined()

          사용자 정의 요소가 정의될 때 이행되는 Promise 객체를 반환한다.

    • devicePixelRatio

      현재 디스플레이 장치의 물리적 픽셀과 CSS 픽셀의 비율을 조회한다.

    • document

      • Properties

        • URL

          현재 문서의 위치를 조회한다.

        • activeElement

          현재 문서에서 포커스를 가진 DOM 내의 요소를 참조한다.

        • adoptedStyleSheets

          현재 문서에서 사용될 구성된 스타일시트 배열을 설정하거나 조회한한다.

        • body

          현재 문서의 <body> 요소를 나타내는 HTMLBodyElement 객체를 참조한다.

        • characterSet

          현재 문서의 문자 인코딩을 조회한다.

        • childElementCount

          현재 문서의 하위 요소의 개수를 조회한다.

        • children

          현재 문서의 모든 자식 요소를 포함한는 라이브 상태의 HTMLCollection을 조회한다.

        • compatMode

          현재 문서가 쿼크(quirks) 모드 또는 표준 모드에서 렌더링되는지의 여부를 나타낸다.

        • contentType

          현재 문서의 MIME 유형을 조회한다.

        • cookie

          현재 문서와 관련된 쿠키(cookie)를 조회하거나 설정한다.

        • currentScript

          현재 문서에 처리중이며 자바스크립트 모듈이 아닌 <script> 요소를 나타내는 HTMLScriptElement 객체로 참조한다.

        • defaultView

          현재 문서에 연결된 window 객체를 참조한다.

        • designMode

          전체 문서를 편집할 수 있는 여부를 'on' 또는 'off'로 제어한다.

        • dir

          문서의 텍스트 방향을 조회하거나 설정한다.

        • doctype

          현재 문서와 연관된 DTD(Document Type Precent)를 조회한다.

        • documentElement

          문서의 루트 요소인 HTMLElement 객체를 참조한다.

        • documentURI

          현재 문서의 위치를 문자열로 조회한다.

        • embeds

          현재 문서 내의 <embed> 요소를 나타내는 모든 HTMLEmbedElement 객체를 포함한 HTMLCollection 객체를 참조한다.

        • firstElementChild

          현재 문서의 첫 번째 자식 요소를 참조한다

        • fonts

          현재 문서의 FontFaceSet 객체를 참조한다.

        • forms

          현재 문서 내의 <form> 요소를 나타내는 모든 HTMLFormElement 객체를 포함하는 HTMLCollection을 참조한다.

        • fullscreenElement

          현재 문서에서 전체 화면 모드로 표시되는 요소를 조회한다. 전체 화면 모드가 아닌 경우 null을 갖는다.

        • fullscreenEnabled

          현재 문서에서 전체 화면 모드를 사용할 수 있는지 여부를 불리언(boolean)으로 조회한다.

        • head

          현재 문서의 <head> 요소를 나타내는 HTMLHeadElement 객체를 참조한다.

        • hidden

          현재 문서가 숨겨져 있는지 여부를 불리언(boolean)으로 조회한다.

        • images

          현재 문서 내의 <img >요소를 나타내는 모든 HTMLImageElement 객체를 포함한 HTMLCollection 객체를 참조한다.

        • implementation

          현재 문서와 연결된 DOMImplementation 객체를 참조한다.

        • lastElementChild

          현재 문서의 마지막 자식 요소를 참조한다

        • lastModified

          현재 문서가 마지막으로 수정된 날짜와 시간을 포함하는 문자열을 조회한다.

        • links

          현재 문서 내의 href 애트리뷰트를 가진 <a>, <area> 요소를 나타내는 각각의 모든 HTMLAnchorElement, HTMLAreaElement 객체를 포함하는 HTMLCollection을 참조한다.

        • location

          현재 문서에 대한 URL을 다루는 Location 객체를 참조한다.

        • pictureInPictureElement

          현재 문서에서 PIP 모드로 표시되는 요소를 조회한다. 해당되지 않는 경우 null을 갖는다.

        • pictureInPictureEnabled

          현재 문서에서 PIP 모드를 사용할 수 있는지 여부를 불리언(boolean)으로 조회한다.

        • plugins

          현재 문서 내의 <embed> 요소를 나타내는 모든 HTMLEmbedElement 객체를 포함한 HTMLCollection 객체를 참조한다.

        • pointerLockElement

          현재 문서에서 포인터가 잠겨있는 동안 마우스 이벤트의 대상으로 설정된 요소를 참조한다.

        • readyState

          문서의 로드 상태를 나타낸다.

        • referrer

          현재 페이지에 연결된 이전 페이지의 URL을 조회한다.

        • scripts

          현재 문서 내의 <script> 요소를 나타내는 모든 HTMLScriptElement 객체를 포함한 HTMLCollection 객체를 참조한다.

        • scrollingElement

          현재 문서를 스크롤하는 요소를 참조한다.

        • styleSheets

          현재 문서에 명시적으로 연결되었거나 문서에 포함된 스타일시트를 나타내는 CSSStyleSheet 객체의 목록을 다루는 StyleSheetList 객체를 참조한다.

        • timeline

          현재 문서의 기본 타임라인을 나타내는 DocumentTimeline 객체의 인스턴스를 참조한다.

        • title

          현재 문서의 제목(<title>)을 조회하거나 설정한다.

        • visibilityState

          현재 문서의 가시성 상태를 조회한다.

      • Methods

        • adoptNode()

          현재 문서로 다른 문서에 있는 지정된 노드를 전송한다.

        • append()

          현재 문서 하위의 맨 끝에 지정된 노드를 추가한다.

        • close()

          Document.prototype.open() 메소드로 열린 현재 문서의 쓰기를 완료한다.

        • createAttribute()

          새로운 Attr 객체를 생성한다.

        • createAttributeNS()

          네임스페이스 URI를 지정하여 새로운 Attr 객체를 생성한다.

        • createCDATASection()

          새로운 CDATA 섹션 노드를 생성한다.

        • createComment()

          새로운 주석 노드를 생성한다.

        • createDocumentFragment()

          현재 DOM 트리에 영향을 주지 않는 문서 조각으로 사용될 새로운 DOM 트리를 생성한다. 

        • createElement()

          지정된 태그 명으로 새로운 Element 객체를 생성한다.

        • createElementNS()

          지정된 네임스페이스 URI와 정규화된 이름으로 요소를 생성한다.

        • createEvent()

          지정된 유형의 이벤트를 생성한다.

        • createNodeIterator()

          현재 문서에서 지정된 루트 노드의 하위 노드를 대상으로 지정된 기준에 따라 구성된 새로운 NodeIterator 객체를 반환한다.

        • createProcessingInstruction()

          새로운 ProcessingInstruction 노드를 생성한다.

        • createRange()

          새로운 Range 객체를 생성한다.

        • createTextNode()

          새로운 Text 노드 객체를 생성한다.

        • createTreeWalker()

          현재 문서에서 지정된 루트 노드의 하위 노드를 대상으로 지정된 기준에 따라 구성된 트리 내의 노드를 다루는 TreeWalker 객체를 반환한다.

        • elementFromPoint()

          뷰포트(viewport)를 기준으로 지정된 좌표에서 최상위 요소를 반환한다.

        • elementsFromPoint()

          뷰포트(viewport)를 기준으로 지정된 좌표에 있는 모든 요소를 배열로 반환한다.

        • exitFullscreen()

          현재 문서의 요소가 전체 화면 모드로 표시될 때 원래 화면 모드로 복원한다.

        • exitPictureInPicture()

          현재 문서에서 PIP 모드로 보여지는 미디어 요소를 원래 모드로 복원한다.

        • exitPointerLock()

          현재 문서에 포인터 잠금이 지정된 경우 비동기적으로 해제한다.

        • getAnimations()

          현재 문서의 하위 요소에 연결된 유효한 모든 Animation 객체의 배열을 반환한다.

        • getElementById()

          현재 문서 내의 하위 요소들에 대하여 지정된 id 애트리뷰트를 갖는 요소를 찾아 반환한다.

        • getElementsByClassName()

          현재 문서 내의 하위 요소들에 대하여 지정된 class 애트리뷰트를 갖는 요소들을 모두 찾아 HTMLCollection으로 반환한다.

        • getElementsByName()

          현재 문서 내의 하위 요소들에 대하여 지정된 name 애트리뷰트를 갖는 요소들을 모두 찾아 NodeList으로 반환한다.

        • getElementsByTagName()

          현재 문서 내의 하위 요소들에 대하여 지정된 태그 이름을 갖는 요소들을 모두 찾아 HTMLCollection으로 반환한다.

        • getSelection()

          현재 문서에서 사용자가 선택한 텍스트의 범위를 가진 Selection 객체를 반환한다.

        • hasFocus()

          현재 문서 또는 문서 내부의 요소에 포커스(focus)가 있는지를 나타내는 불리언(boolean)을 반환한다.

        • hasStorageAccess()

          현재 문서가 분할되지 않은 쿠키(cookie)에 엑세스할 수 있는지 여부를 불리언(boolean)으로 확인하는 Promise 객체를 반환한다.

        • importNode()

          현재 문서에 삽입할 수 있는 다른 문서의 Node 객체 또는 DocumentFragment 객체의 복사본을 생성한다.

        • open()

          현재 문서에 Document.prototype.write() 메소드를 사용하여 새로 쓰기 위해 문서를 연다.

        • prepend()

          현재 문서의 첫 번째 자식 앞에 Node 객체 또는 문자열 세트 집합을 추가한다.

        • querySelector()

          현재 문서내의 Element 객체를 대상으로 지정된 CSS 선택기 세트와 첫 번째로 일치하는 요소를 반환한다.

        • querySelectorAll()

          현재 문서내의 Element 객체를 대상으로 지정된 CSS 선택기 세트와 일치하는 모든 요소를 NodeList로 반환한다.

        • replaceChildren()

          현재 문서의 기존 하위 노드를 지정된 새 노드로 대체한다.

        • requestStorageAccess()

          로드된 현재 문서가 분할되지 않은 쿠키에 대한 접근을 요청한다.

        • write()

          document.open() 메소드로 열린 현재 문서 스트림(stream)에 지정된 텍스트 문자열을 작성한다.

        • writeln()

          document.open() 메소드로 열린 현재 문서 스트림(stream)에 끝에 개행이 포함된 지정된 텍스트 문자열 작성한다.

    • event

      현재 처리중인 Event를 조회한다.

    • frameElement

      문서내 <iframe>요소 또는<object> 요소 처럼 window객체를 포함한 요소를 조회한다.

    • frames

      현재 문서 내에 포함된 프레임의 window 객체를 원소로 갖는 유사 배열을 조회한다.

    • history

      • Properties

        • length

          현재 페이지를 포함해 세션 기록의 길이를 정수로 조회한다.

        • scrollRestoration

          세션 기록 탐색시 스크롤 위치 복원 여부를 명시한다.

        • state

          세션 기록 스택 최상단의 스테이트(state)를 나타내는 값을 조회한다. popstate 이벤트를 기다리지 않고 스테이트(state)를 확인할 수 있다.

      • Methods

        • back()

          직전 페이지로 이동하도록 한다. history.go(-1)과 같다. 이전 페이지가 없는 경우 아무 동작도 발생하지 않는다.

        • forward()

          세션 기록을 기준으로 현재 인덱스 보다 1이 큰 인덱스에 해당하는 페이지로 이동하도록 한다. history.go(1)과 같다. 해당 페이지가 없는 경우 아무 동작도 발생하지 않는다.

        • go()

          세션 기록 데이터에서 지정된 인덱스를 갖는 특정 페이지로 현재 페이지를 전환한다.

        • pushState()

          웹브라우저의 세션 기록 스택에 항목을 추가한다.

        • replaceState()

          현재 세션 기록 항목을 지정된 값으로 대체한다.

    • indexedDB

      • Methods

        • cmp()

          주어진 두 개의 키 값을 비교하여 저장 및 반복 작업을 필요로 하는 레코드 작업의 동등성과 순서를 결정한다.

        • databases()

          사용 가능한 모든 데이터베이스의 이름과 버전을 포함하는 객체를 원소로 갖는 배열로 이행되는 Promise 객체를 반환한다.

        • deleteDatabases()

          데이터베이스의 삭제를 요청한다.

        • open()

          데이터베이스에 대한 열기 요청을 한다.

    • innerHeight

      창의 수평 스크롤바의 높이를 포함한 뷰포트 높이를 픽셀 단위로 조회한다.

    • innerWidth

      창의 수직 스크롤바의 폭을 포함한 뷰포트의 너비를 픽셀 단위로 조회한다.

    • length

      현재 창의 <iframe> 요소의 수를 조회한다.

    • localStorage

      • Methods

        • clear()

          저장소의 모든 키를 저장소에서 제거한다.

        • getItem()

          인수로 주어진 키에 연결된 값을 반환한다.

        • key()

          인수로 주어진 n에 대하여 저장소의 n 번째 항목의 키를 반환한다.

        • removeItem()

          인수로 주어진 키를 저장소에서 제거한다.

        • setItem()

          인수로 주어진 키와 값을 새로 저장하거나 재설정한다.

      • Properties

        • length

          Storage 객체에 저장된 데이터 항목의 개수를 조회한다.

    • location

      • Methods

      • Properties

        • hash

          '#' 문자 뒤 URL의 프래그먼트 식별자를 조회할 수 있다.

        • host

          URL에서 호스트 부분을 값으로 하는 DOMString이며 호스트명', :', 포트 번호를 포함하여 조회할 수 있다.

        • href

          완전한 URL을 값으로 하는 DOMString을 조회한다. 설정을 하는 경우에는 연결된 문서가 설정된 URL로 이동이 된다.

        • origin

          지정한 장소에 유래된 표준 형태의 값을 조회할 수 있다.

        • password

          도메인 이름 이전에 명시된 비밀번호를 조회할 수 있다.

        • pathname

          '/' 문자 뒤 URL의 경로를 조회할 수 있다.

        • port

          URL의 포트 번호를 조회할 수 있다.

        • protocol

          URL에서 프로토콜 부분을 값으로 하는 DOMString이며 ':'도 포함하여 조회할 수 있다.

        • username

          도메인 이름 이전에 명시된 사용자 명을 조회한다.

    • locationbar

      가시성을 확인할 수 있는 웹브라우저의 위치 표시줄(URL 주소 입력) 객체를 참조한다.

    • menubar

      가시성을 확인할 수 있는 웹브라우저의 메뉴바 객체를 참조한다.

    • name

      창의 이름을 조회하거나 설정한다. name 속성은 하이퍼링크를 열거나 Form을 전송할 때 대상(target)으로 사용된다.

    • navigator

      • Properties

        • userAgent

          접속 중인 웹브라우저의 사용자 에이전트 문자열을 조회한다.
    • opener

      window.open() 메소드를 사용하여 창을 열거나 target이 지정되어 있는 링크를 통해 창을 열었을 경우 창을 열어준 창의 window 객체의 참조를 조회한다.

    • outerHeight

      웹브라우저의 인터페이스가 포함된 전체 창 높이를 조회한다.

    • outerWidth

      웹브라우저의 인터페이스가 포함된 전체 창 폭을 조회한다.

    • pageXOffset

      수평 방향으로 스크롤 크기를 조회하는 scrollX의 별칭이다.

    • pageYOffset

      수평 방향으로 스크롤 크기를 조회하는 scrollY의 별칭이다.

    • parent

      현재 창의 부모 창의 window 객체를 참조한다.

    • performance

      • Properties

        • timeOrigin

          성능 관련 타임 스탬프의 기준으로 사용되는 고해상도 타임 스탬프를 조회한다.

      • Methods

        • now()

          고해상도 타임 스탬프를 밀리초로 반환한다.

    • screen

      • Methods

      • Properties

    • screenLeft

      웹브라우저의 좌측이 장치의 스크린에서 왼쪽으로 부터 떨어진 거리를 픽셀로 조회한다.

    • screenTop

      웹브라우저의 상단이 장치의 스크린에서 위쪽으로 부터 떨어진 거리를 픽셀로 조회한다.

    • screenX

      screenLeft의 별칭이다.

    • screenY

      screenTop의 별칭이다.

    • scrollX

      스크롤시 수평 방향 위치값을 픽셀 단위로 조회한다.

    • scrollY

      스크롤시 수직 방향 위치값을 픽셀 단위로 조회한다.

    • self

      현재 창 자신의 window 객체를 참조한다. 

    • sessionStorage

      • Methods

        • clear()

          저장소의 모든 키를 저장소에서 제거한다.

        • getItem()

          인수로 주어진 키에 연결된 값을 반환한다.

        • key()

          인수로 주어진 n에 대하여 저장소의 n 번째 항목의 키를 반환한다.

        • removeItem()

          인수로 주어진 키를 저장소에서 제거한다.

        • setItem()

          인수로 주어진 키와 값을 새로 저장하거나 재설정한다.

      • Properties

        • length

          Storage 객체에 저장된 데이터 항목의 개수를 조회한다.

    • status

      웹브라우저 하단의 상태 표시줄에 텍스트를 설정하거나 조회할 수 있다.

    • statusbar

      웹브라우저의 상태 표시줄의 가시성을 토글할 수 있는 상태 표시줄 객체를 참조한다.

    • toolbar

      웹브라우저의 도구 모음 가시성을 확인하는 데 사용할 수 있는 도구 모음 객체를 참조한다.

    • top

      창의 계층에서 최상위 창에 대한 window 객체를 참조한다.

    • visualViewport

      • Properties

        • height

          시각적 뷰포트의 높이를 CSS 픽셀 단위로 조회한다.

        • offsetLeft

          레이아웃 뷰포트의 왼쪽 가장자리에서 시각적 뷰포트 왼쪽 가장자리 오프셋을 CSS 픽셀 단위로 조회한다.

        • offsetTop

          레이아웃 뷰포트의 위쪽 가장자리에서 시각적 뷰포트 위쪽 가장자리 오프셋을 CSS 픽셀 단위로 조회한다.

        • pageLeft

          시각적 뷰포트 왼쪽 가장자리의 x 좌표를 CSS 픽셀로 조회한다.

        • pageTop

          시각적 뷰포트 위쪽 가장자리의 y 좌표를 CSS 픽셀로 조회한다.

        • scale

          시각적 뷰포트에 적용된 핀치 줌(pinch-zoom) 배율을 조회한다.

        • width

          시각적 뷰포트의 폭을 CSS 픽셀 단위로 조회한다.

      • Event Handlers

        • onresize

          창(window) 크기가 변경될 때 발생한다. 일반적으로 뷰포트 크기 변경이 있는 경우 발생한다.

        • onscroll

          요소가 스크롤 될 때 발생한다.

    • window

      지정된 창의 window 객체를 참조한다.

  • Methods

    • alert()

      확인 버튼과 선택에 따라 지정된 메시지를 가진 웹브라우저의 경고 대화 상자를 연다.

    • cancelAnimationFrame()

      window.requestAnimationFrame() 메소드에 의해서 동작이 실행될 때 반환된 실행 ID를 이용해서 동작을 취소 한다.

    • clearInterval()

      setInterval() 메소드로 등록되어 주기적으로 호출되는 동작을 취소할 수 있다.

    • clearTimeout()

      setTimeout() 메소드로 등록된 함수 실행 예약을 취소할 수 있다.

    • close()

      윈도우를 닫는다.

    • fetch()

      유저에이전트 백그라운드에서 네트워크 요청을 한다.

    • getComputedStyle()

      인수로로 지정된 대상의 활성된 스타일시트를 계산한 후 모든 CSS 속성 값을 포함하는 읽기 전용 CSSStyleDeclaration 객체를 반환한다.

    • getSelection()

      사용자가 선택한 텍스트 범위 또는 캐럿의 현재 위치를 나타내는 Selection 객체를 반환한다.

    • matchMedia()

      인수로 주어진 미디어쿼리 문자열의 분석 결과를 나타내는 MediaQueryList 객체를 반환한다.

    • open()

      새로운 윈도우를 생성한다.

    • postMessage()

      출처와 상관없이 Window 객체 간 안전하게 데이터를 전송한다.

    • requestAnimationFrame()

      웹브라우저에게 수행하기를 원하는 애니메이션을 알리고 다음 리페인트(repaint)가 진행되기 전에 해당 애니메이션을 업데이트하는 지정된 함수를 호출한다.

    • scroll()

      현재 창의 특정 위치로 스크롤한다.

    • setInterval()

      설정된 시간 단위로 주기적으로 함수를 실행한다.

    • setTimeout()

      함수 실행을 지정된 시간에 예약하여 한번 실행한다. 예약이 완료되면 타이머 ID를 반환한다.

  • Event Handlers

    • Standards

      Window 객체에 대한 DOM 표준 사양 문서에 정의한 이벤트 핸들러를 나타낸다.

      • onafterprint

        문서가 인쇄를 시작하거나 인쇄 미리보기가 닫힌 후에 발생한다.

      • onbeforeprint

        문서가 인쇄되거나 인쇄를 위해 미리보기가 될 때 발생한다.

      • onbeforeunload

        window, document, resources가 unload되려고 할 때 발생한다.

      • onblur

        활성된 window에서 비활성으로 변경되는 경우 발생한다.

      • onerror

         window에서 사용할 리소스 로드에 실패했거나 사용할 수 없는 경우 발생한다.

      • onfocus

        비활성된 window에서 활성으로 변경되는 경우 발생한다.

      • onhashchange

        URL의 조각 식별자(hash)가 변경되면 발생한다.

      • onlanguagechange

        사용자의 기본 언어가 변경될 때 발생한다.

      • onload

        window에서의 load 이벤트는 HTML 문서가 웹브라우저에서 해석이 완료되는 시점에 발생한다.

      • onmessage

        window.postMessage()를 호출하여 창이 메시지를 받았을 때 발생한다.

      • onmessageerror

        역직렬화를 할 수 없는 메시지를 수신할 때 window에서 발생한다.

      • onoffline

        웹브라우저가 네트워크에 대한 액세스 권한을 잃고 Navigator.onLine 값이 false로 전환되면 발생한다.

      • ononline

        웹브라우저가 네트워크에 액세스하고 Navigator.onLine의 값이 true로 전환되면 발생한다.

      • onpagehide

        세션 기록과 다른 페이지를 표시하는 과정에서 웹브라우저가 현재 페이지를 숨기면 발생한다. 예를 들어서 사용자가 웹브라우저의 뒤로가기 버튼을 클릭하면 이전 페이지가 표시되기 전에 현재 페이지에서 페이지 숨기기 이벤트를 수신한다.

      • onpageshow

        세션 기록 항목에 의해서 페이지가 보여질 때 발생한다.

      • onpopstate

        사용자가 세션 기록을 탐색하는 동안 활성 기록 항목이 변경되면 발생한다.

      • onrejectionhandled

        Promise가 거부될 때 명시된 거부를 처리 후 전역(Window, Worker) 스코프로 전송된다.

      • onresize

        창(window) 크기가 변경될 때 발생한다. 일반적으로 뷰포트 크기 변경이 있는 경우 발생한다.

      • onstorage

        저장 영역(localStorage 또는 sessionStorage)이 다른 문서의 컨텍스트에서 수정되면 발생한다.

      • onunhandledrejection

        프로미스(promise)가 거부될 때 명시된 핸들러가 없는 경우 전역(Window, Worker) 컨텍스트(context)로 전송한다.

      • onunload

        문서나 하위 리소스가 언로드(unload)일 때 발생한다.

    • Extended

      • onscroll

        요소가 스크롤 될 때 발생한다.

      • onscrollend

        스크롤이 완료되면 VisualViewport, Document 또는 Element에서 발생한다.

상속 계층 탐색

EventTarget

  • Methods

    • addEventListener()

      EventTarget 인터페이스를 상속받는 하위 요소들의 이벤트 리스너(Listener)를 등록한다. Window 객체도 포함된다.

    • dispatchEvent()

      사용자가 생성한 이벤트를 전달한다. 코드에 의한 이벤트 트리거(trigger)에 사용된다.

    • removeEventListener()

      등록된 이벤트를 제거한다. 이벤트 타입, 등록된 함수, 등록시 제공했던 다양한 옵션과 일치된 경우에 이벤트를 제거한다.

Object

  • Methods

    • hasOwnProperty()

      객체가 특정 프로퍼티를 가지고 있는지를 블린(boolean) 값으로 반환한다.

    • isPrototypeOf()

      해당 객체가 다른 객체의 프로토타입 체인에 속한 객체인지를 체크한다.

    • propertyIsEnumerable()

      매개 변수의 속성이 열거가능(enumerable)한지 여부를 체크한다.

    • toLocaleString()

      객체를 나타내는 문자열을  작동하는 지역(locale)의 방식으로 출력이 된다.

    • toString()

      객체를 나타내는 문자열을 반환한다.

    • valueOf()

      객체의 원시(primitive) 값을 반환한다.

  • Properties

    • constructor

      객체의 생성자 함수를 참조한다.

    • __proto__

      상속된 [[Prototype]] 참조하거나 설정가능하며 일반적으로 실제 코드상에서는 잘 사용되지 않는다. ECMAScript에서 사용되지 않는 비표준이지만 최신 웹브라우저에서는 비공식적으로 지원하고 있다. 따라서 곧 표준 속성으로 지원될 확률이 높다.

      현재는 표준 사양에 명시되었다.

버전 명세

HTML Standard API
#the-window-object

지원 웹브라우저