본문 바로가기
바닐라코딩 사전학습/JS

Windows 객체

by 꼬마보노 2021. 12. 28.

Windown 객체란?

windows 객체는 두 가지 역할을 한다.

  1. 브라우저 안의 모든 요소들이 소속된 객체로 최상위에 있기 때문에 어디서든 접근이 가능하다고 해서 '전역 객체' 라고도 부른다.
  2. 일반적으로 열고 있는 브라우저의 창(browser window)을 의미하고 이 창을 제어하는 다양한 메서드를 제공한다.

 

전역객체로써의 window

window객체는 window라는 이름으로 접근할 수 있다. 

콘솔에서 window를 쳐보면 window내의 다양한 프로퍼티들을 확인할 수 있다.

window객체

 

var myName = 'Bono';

function getMyName() {
    return myName;
}

console.log(window.myName); // Bono
console.log(window.getMyName()); // Bono

 

프로그래머가 작성하는 코드들은 대부분 window객체의 프로퍼티가 된다.

위의 코드와 같이 var 키워드로 변수를 선언하거나 함수를 선언하면 모두 window객체의 프로퍼티가 된다.

그럼에도 불구하고 프로그래머는 앞에 변수와 함수 선언시에 window를 붙이지 않는데, window는 전역 객체로써 페이지 내에 있는 모든 객체를 다 포함하고 있기 때문에 window는 생략이 가능한 특징이 있다.

 

let myName = 'Bono';

console.log(window.myName); // undefined

한가지 팁으로, let과 const로 선언한 변수는 블록 스코프이기 때문에 window객체 내부의 블록으로 선언된 것으로 인식되어 전역 객체의 프로퍼티로 활용되기 어렵다.

 

브라우저 창으로써의 window

window객체는 브라우저의 창을 대변하고 다양한 메서드를 통해 창을 제어할 수 있다.

window.close(), window.open() 메서드는 창을 열거나 닫고

window.innerWidth같은 프로퍼티에 접근하면 창의 너비 등을 확인할 수 있다.

 

참조)

Window - Web API | MDN (mozilla.org)

 

Window - Web API | MDN

Window 인터페이스는 DOM 문서를 담은 창을 나타냅니다.

developer.mozilla.org

[JavaScript] 자바스크립트 window 객체 이해하기 :: BigTop_Log (tistory.com)

 

'바닐라코딩 사전학습 > JS' 카테고리의 다른 글

underscore.js 라이브러리  (0) 2021.12.28
Prototype 객체  (0) 2021.12.28
this의 4가지 역할  (0) 2021.12.27
new 예약어  (0) 2021.12.27
객체 생성자 함수  (0) 2021.12.27