ES란?
ES (ECMA Script) 는 자바스크립트 표준 혹은 규격, 스펙을 의미한다. 시간이 지남에 따라 계속해서 ES5, ES6 등 발전해나가고 있다.
대표적으로 ES3는 우리가 흔히 쓰고있는 자바스크립트로 스코프, 호이스팅, 프로토타입 등의 특징이 있다.
ES5 vs ES6?
ES5
- 배열과 관련해서 새로운 메서드들이 생겼다. forEach, map, filter, reduce, some, every 등 이 대표적이다.
- object에 대한 getter/setter 지원한다.
- 자바스크립트 strict 모드를 지원한다.
- JSON을 지원한다. 과거에는 XML을 사용했는데 json이 떠오르며 지원하게 되었다.
- bind() 메소드가 생겼다. this를 강제적으로 bind 시켜주는 메서드이다.
ES6
- let, const 키워드 추가되었다.
- arrow 문법을 지원한다.
- iterator / generator 가 추가되었다.
- module import / export 가 추가되었다.
- Promise 가 도입되었다.
- Default, Rest 파라미터
- 해체 할당, Spread 연산자를 사용할 수 있다.
- 템플릿 리터럴를 지원한다.
- 호이스팅이 사라진 것 같은 효과
- 함수 단위 스코프에서 블록 단위 스코프로 변경되었다.
참조
(자알쓰) ECMASCript? ES?