FRONT-END/TIL

[WIL] 230129 ES / ES5, ES6 문법 차이

서근 2023. 1. 29. 18:40
반응형

JAVSCRIPT

브라우저에 동작을 나타내주기 위해서 자바스크립트를 사용해야 한다.

 

자바스크립트는 2009년 노드 js가 탄생하면서 자바스크립트 만으로 컴퓨터 파일을 읽고 쓰고 네트워크 통신까지 활용 범위가 넓어지게 되었다.

그럼 ES가 뭐야?

ES는 ECMAScript의 약자 이다. 자바스크립트는 Mocha라는 이름으로 탄생해 LiveScript, 그리고 Javasciprt라는 이름으로 만들어지게 되었고, 이후 MS에서 리버스엔지니어링을 통해 기능을 수정 보안 하고 JScript라는 이름으로 나오게 되었다. 

 

JScriptJavasciprt와의 언어적 충돌이 있었고, ECMA International을 통해 ECMAScript1이 새롭게 나오게 되었다.

 

브라우저 엔진들이 자바스크립트 코드를 이해하고 번역하고 실행하기 위해서 규격을 정한것이 ECMAScript인데, Javasciprt의 문법을 규격화한 표준 사항을 명시하고 있다고 생각하면 된다.

ES5와 ES6의 차이?

자바스크립트는 1995년에 탄생했는데, 초창기 부터 지금까지 아주 많은 기능들이 추가되었다. 이 버전이 변경되면서 업데이트된 버전이 바로 ES version 인 것! 

 

버전별로 어떤것이 추가되었는지에 대한 히스토리는 위키피디아 를 통해 알아볼 수 있다.

 

그럼 ES5ES6는 왜 유명할까?

 

일단 ES5는 2009년에 출시되었고, ES5는 당시 크롬, 파이어폭스, IE, Netscape 브라우저 회사들이 서로 상의를 거쳐 만들어진 문법이다. 이때 엄격모드(strict mode), ForEach, filter, reduce, some, every와 같은 메소들이 나왔고 gettersetterJSON이 지원되게 되었다.

 

ES6ES5가 출시되고 6년 뒤인 2015년에 탄생되었는데 이때 엄청 많은 최신문법들이 쏟아져 나왔다. 대표적으로 var 키워드가 호이스팅으로 인해 문제가 많았는데, letconst 가 나오면서 이를 보완했고, Class, map, Set, for... of, function의 화살표 함수 및 이터널 그리고 제너레이터가 추가되었으며, 모듈의 import/export를 추가함과 동시에 Promise를 도입하게 되었다.

 

우리가 최신 자바스크립트다 라고 말하는 건 ES6를 가리킨다!

 

이후 버전들은 ES6에서 조금조금씩 추가되었다. ( 크게 중요하지 않음....(?)) 

 

우리가 바벨을 사용하여 프로그래밍을 한다면, ES6 이후의 추가된 문법들은 거의 신경 쓰지 않고 프로그래밍이 가능하다.

 

만약 ES 버전별로 브라우저에서 호환되는 목록을 보고 싶다면 이곳에서 확인 가능하다.

Next Week

  • 프로그래머스 알고리즘 (1 Lv ~ )
  • ReactJS
  • Styled-component

참고 문헌 REFERENCE

드림코딩 자바스크립트 마스터리 (ES6+)

lEhG.log