JavaScript ES
ES 는 ECMAScript 의 약자
ES라는 것은 'Javascript의 표준 규격'을 의미
Ecma International이 ECMA-262 기술 규격에 따라 정의하고 있는 표준화된 스크립트 프로그래밍 언어를 말한다.
자바스크립트를 표준화하기 위해 만들어졌다.
ES 가 등장하게 된 배경
Netscape이라는 웹 브라우저를 통해 상호작용을 강조하기 위해 간단한 기능을 넣어 만든것이 자바스크립트의 시초였다.
웹 개발자들은 각 브라우저에서 동일한 기능을 구현하기 위해 모든 코드를 따로 작성해줘야 했기 때문에 표준화 작업을 위해 많은 사람들이 노력했고, 그 결과 Ecma International에서 ECMAScript(ECMA-262)라는 이름으로 현재의 자바스크립트 표준을 제정하기 시작했다.
ES3 (1999)
우리가 흔히 아는 js이다.
함수 단위의 스코프, 호이스팅, 모듈화 미지원, 프로토타입, 클로저 등등 자바스크립트의 기본적인 특징들이 들어있다.
ES5 (2009)
- 배열에 forEach, map, filter, reduce, some, every와 같은 메소드들이 지원되었다.
- Object에 대한 getter와 setter가 지원되었다.
- Javascript strict모드가 지원되었다. (기존에 비해서 더 엄격하게 문법 검사를 진행한다.)
- json 형식의 자료들을 지원한다.
과거에는 XML이라는 규격을 사용했다가, json이 인기를 끌면서 javascript 역시 지원을 하게 되었다.
ES6 (ES 2015)
- Hoisting을 개선했다.
기존에는 var키워드를 사용하여 호이스팅이 빈번하게 일어났는데
이를 방지하기 위해 블록 스코프를 가진 let과 const를 추가했다. - 화살표 문법을 지원한다.
장점 : 코드의 간결화, this를 바인딩하지 않는다. - iterator와 generator 추가.
- module의 import/export 추가.
- Promise 도입
자바스크립트는 비동기적 언어이기 때문에 callback에 대한 이슈가 많았으나
이부분을 해결할 수 있는 문법을 제공한다.
ES8 (ES 2017)
- async - await 추가
- 객체 객체의 좀 더 신화된 메소드 등장, Object.key()에 대응되는 매소드인 Object values/entries 메소드
- 문자열 앞부분에 공백을 넣어 자리수를 맞춰주는 String.padStart(),
문자열 뒷부분에 공백을 넣어 자리수를 맞춰주는 String.padEnd() - 매개변수 마지막에 콤마 붙이는 것 허용
'coding > IT, CS' 카테고리의 다른 글
Side effect, Decoupling, 디자인 패턴 (0) | 2022.08.10 |
---|---|
테스트 코드 종류와 테스트 피라미드 (0) | 2022.08.09 |
마이크로 서비스 아키텍처 도메인 (0) | 2022.08.07 |
Restful API (0) | 2022.07.31 |
SQL과 NOSQL의 차이 (0) | 2022.07.25 |