Published on

[ 모던 자바스크립트 Deep Dive ] 스터디 3회

Authors
  • avatar
    Name
    박준형
    Twitter

Strict Mode

strict mode는 js 언어의 문법을 좀 더 엄격히 적용하여 오류를 발생시킬 가능성이 높거나 최적화 작업에 문제를 일으킬 수 있는 코드에 대해 명시적인 에러를 발생시킨다.

빌트인 객체

  • 표준 빌트인객체 : ECMAScript 사양에 정의된 객체이므로 자바스크립트 실행 환경과 상관없이 언제나 사용이 가능하다.

  • 호스트 객체 : ECMAScript 사양에 정의되어있지 않지만 자바스크립트 실행 환경에서 추가로 제공하는 객체

원시값과 래퍼 객체

const str = 'hello'

console.log(str.length) // 5

이처럼 문자열 혹은 숫자, 불리언 값에 대해 객체처럼 접근하면 생성된느 임시 객체를 wrapper object라고 한다. 문자열에 접근하면 그 순간 래퍼 객체인 String 생성자 함수의 인스턴스가 생성되고 래퍼 객체의 [[StringData]] 내부 슬롯에 할당된다.

전역객체

코드가 실행되기 이전 단계에 JS Engine에 의해 어떤 객체보다도 먼저 생성되는 특수한 객체이며 어떤 객체에도 속하지않는 최상위 객체를 가리킨다. 즉 계층적 구조상 어떤 객체에도 속하지 않은 모든 빌트인 객체의 최상위 객체다.

최상위 객체라는것은 프로토타입 상속 관계상에서 최상위 객체라는 의미가 아니다.