본문 바로가기
javascript

Global 오브젝트

by rami_ 2021. 10. 21.

Global 오브젝트

모든 <script>를 통해 하나만 존재

 new 연산자로 인스턴스 생성 불가

 모든 코드에서 공유

이름(Global)은 있지만 오브젝트 실체가 없음/오브젝트 작성(사용)할 수 없음

 

Global 오브젝트 함수, 변수

Global 오브젝트의 함수, 변수를 Global 함수, Global 변수라고 부름

함수 안에 작성한 것

 지역함수, 로컬함수라고 부름

 지역변수, 로컬변수라고 부름

전역객체라고 부르기도 하지만 Global은 오브젝트 이름.

 

Global 프로퍼티 리스트

NaN Not-a-Number

Infinity 무한대 값

undefined undefined

함수

isNaN() NaN여부, NaN이면 ture, 아니면 false 반환

isFinite() 유한대 여뷰, 유한이면 true, 아니면 false반환

parseint() 정수로 변환하여 반환

parseFloat() 실수로 변환하여 반환

eval() 문자열을 JS코드로 간주하여 실행

encodeURI() URI인코딩

encodeURIComponent() URI확장 인코딩

decodeURI() encodeURI 함수의 인코딩 값을 디코딩

decodeURIComponent() encodeURIComponent함수의 인코딩 값을 디코딩

parse를 변환의 의미로 사용

 

Global 프로퍼티

Global 프로퍼티 종류 : NaN, Infinity, undefined

상수 개념으로 사용. 외부에서 프로퍼티 값 변경 불가

delete 연산자로 삭제 불가

log(NaN);

log(Infinity);

log(undefined); //여기서 NaN, Infinity, undefined는 프로퍼티의 이름이 됨. 글로벌 오브젝트는 실체가 없으므로 오브젝트의 이름을 작성하지 않고 프로퍼티 이름만 작성함. 오브젝트의 이름을 작성하지 않으면 글로벌 프로퍼티로 인식. 글로벅 오브젝트의 프로퍼티와 함수가 window 오브젝트에 저장됨.

 

Global과 Window 관계

글로벌과 window 오브젝트 주체

글로벌 오브젝트는 JS가 주체

window오브젝트는 window가 주체

주체는 다르지만 글로벌 오브젝트의 프로퍼티와 함수가 window 오브젝트에 설정됨

Host 오브젝트 개념 활용(브라우저안에 있는 오브젝트를 자바스크립트에서 마치 자바스크립트에 있는 것처럼 쓰는 것)