우리가 js코드를 쓰기는 하는 걸까요? -네, 계속이요
자바스크립트에서 코드가 실행될 때는 항상 'execution context(실행 컨텍스트)' 안에서 실행됩니다.
실행 컨텍스트란, 이전에 봤듯이 문법을 검사하고, 코드를 살펴보고 확인하고 실행하는 것 입니다. 이는 현재 실행중인 코드를 실행컨텍스트에
global = 전역 = function 안에 있지 않음. 더 깊게 알 필요없음.
언제던 코드를 실행하면, 자바스크립트 엔진은
global objects 와 특별한 변수 this 를 생성
아무 코드없이 js를 실행해도, this 에서 window(global object)가 나온다.
global level에선 this = window 이다.
js에 변수 a와 함수 b를 전역으로 작성하면, window object안에 둘다 들어가있다.
(전역 이라는 뜻)
-> a로도 접근 가능/ window.a 로도 접근 가능
그래서 execution context(base)에는
global object
this
outer environment
your code
가 있으며,
당신이 쓰지 않은 다른 것들이 당신을 위해 있다.