은닉을 향한 자바스크립트의 여정 클래스 필드 스펙 Stage3까지 올랐다고한다. 곧 Stage4가 표준 스펙이 될거라는데?? 타입스크립트 3.8부터 private를 지원, 공부 중에 잠깐 확인한 적이 있었다. 표준 스펙이 될 것이다. 스펙이 업데이트될 수 있다. private와 같은 키워드를 사용하지 않고 #을 사용한다. 키워드가 아닌 프리픽스 public과 다르게 클래스의 필드 선언을 통해서만 만들 수 있다. 동적으로 객체에 추가할 수 없다. 메서드에는 제한적이며 메서드 선언으로 사용 불가 함수 표현식으로 정의 객체 초기화 구문은 계산된 속성명(computed property name)을 사용할 수 없다. 모든 private 필드는 소속된 클래스에 고유한 스코프를 갖는다. getter 함수를 만들어서 ..
호이스팅(Hoisting) 클로저같은 문법들의 효용성을 이해하기위해서 자바스크립트가 가졌던 특징입니다. var나 let, const로 정의된 변수나 함수선언문, 함수표현식이 유효범위의 최상단으로 끌어올려지는 것처럼 보여지는현상을 말합니다. 최상단으로 끌어올려지는 것처럼이라고 설명한 이유는 가상의 개념으로 설명하는 것이 좀 더 이해의 측면에 유리하기 때문입니다. 정확히 말하면 실행 컨텍스트가 활성화 되었을때 해당 영역에서 변수의 이름을 메모리에 먼저 수집하는 현상으로 인해 발생하는 현상입니다. 즉, 가상의 개념에서는 이해를 돕기위해 호이스팅을 '최상단으로 끌어올려진다'라고 말하지만 코드의 위치는 변하지 않습니다. 간단히 말하면, '유효범위의 코드가 실행되기 전 메모리에 먼저 저장했던 선언문을 사용할 수 있..