최신 글
기술과 일상을 함께 기록합니다.
ECMAScript6
ECMAScript 2015의 스코프, 함수, 문자열, 객체 기능을 작은 예제로 연결하고 관련 글을 안내한다.
JavaScript class 문법
객체 리터럴, 생성자 함수와 프로토타입, JavaScript class로 같은 객체를 만드는 방법을 비교하고 메서드 공유와 상속을 설명한다.
객체 프로퍼티와 프로퍼티 속성
Object.defineProperty의 writable·enumerable·configurable 속성과 getter·setter를 통해 객체 프로퍼티의 변경 범위를 설명한다.
프로토타입과 상속
JavaScript의 프로토타입 체인, 생성자 prototype과 객체의 [[Prototype]] 차이, 속성 가리기와 상속 속성 순회를 예제로 설명한다.
호이스팅(Hoisting)
JavaScript 함수 선언과 var·let·const의 등록·초기화 시점 차이를 예제로 살펴보고 TDZ와 호출 오류가 생기는 이유를 설명한다.
템플릿 리터럴(Template Literals)
템플릿 리터럴의 값 보간과 줄바꿈 보존을 예제로 살펴보고 보간 결과를 HTML에 넣을 때 필요한 이스케이프 경계를 설명한다.
[ES6] 클래스(class)
JavaScript class의 프로토타입 메서드, 인스턴스 필드, 비공개 필드와 getter·setter 및 extends·super의 동작을 예제로 살펴본다.
[ES6]-Arrows
JavaScript 화살표 함수의 반환 문법과 바깥 this 사용 방식을 일반 함수와 비교하고 메서드·생성자·이벤트 리스너에서의 주의점을 다룬다.
JavaScript Symbol
Symbol로 충돌 없는 객체 키를 만들고 Symbol.for와의 차이, 키 열거·JSON 직렬화에서 빠지는 범위를 예제로 확인한다.
Scope 연산자 let, const
JavaScript var·let·const의 스코프와 TDZ, const의 재할당 제한 및 반복문 클로저에서 값이 달라지는 이유를 예제로 설명한다.
[JavaScript]브라우저명과 모바일, PC브라우저 체크
과거 브라우저 식별 코드의 UA 오분류 원인을 짚고 진단용 추정 예제와 기능 감지·반응형 배치를 선택하는 기준을 설명한다.
[JavaScript] 5자리 인증번호 만들기
Math.random으로 만든 5자리 숫자 데모의 한계를 짚고 실제 인증번호를 서버에서 생성·검증할 때 필요한 만료와 시도 제한을 설명한다.