항해99 - Week02 회고

ㄷr r요·2023년 10월 29일

이번 WIL의 키워드

  • JavaScript의 ES란?

ES라는 것은 'Javascript의 표준 규격'을 의미하는데, 이것이 탄생한 배경에는 '브라우저 전쟁'이라고 하는 웹 브라우저 시장에서의 점유율 싸움이 있었다. 넷스케이프 사에서 개발한 Javascript가 선풍적인 인기를 끌기 시작하자 마이크로소프트 사에서도 IE 3(우리가 알고있는 인터넷 익스플로러)에 JScript라는 이름으로 자바스크립트를 탑재했지만, 실제적으로는 둘의 내용이 매우 달라서 같은 기능을 구현하더라도 개발자들이 해야할 일과 시간이 훨씬 늘어나게 되었다.

실제로 서로 사용자를 끌어들이기 위해 이것저것 기능을 추가하다 보니 Javascript와 JScript는 점점 다 달라지는 경향을 보였고, 이에 보다못한 European Computer Manufacturers Association (ECMA, 현 ECMA International)에서 Javascript에 대한 표준을 정하게 되었다.

또, ECMA에서는 Javascript의 표준만 정하는게 아닌 다른 표준안도 정하기 때문에 그것들과 구분하기 위해 숫자를 붙였고 이것이 262가 되었다. 즉, ECMA 262는 자바스크립트의 표준 규격이라고 생각하면 된다. 현재 우리가 ES라고 부르는 것은 ECMA Script의 약자이며, ES5는 ECMA Script 5의 규격을 따른다고 생각하면 된다.
.

  • ES5/ES6 문법 차이

ES5 (2009)

  1. 배열에 forEach, map, filter, reduce, some, every와 같은 메소드들이 지원되었다.
  2. Object에 대한 getter와 setter가 지원되었다.
  3. Javascript strict모드가 지원되었다. (기존에 비해서 더 엄격하게 문법 검사를 진행한다.)
  4. json 형식의 자료들을 지원한다. 과거에는 XML이라는 규격을 사용했다가, json이 인기를 끌면서 javascript 역시 지원을 하게 되었다.

우리가 사용하는 언어들(영어, 한국어, 일본어, 중국어 등등..)이 시간이 지나면서 발전하고 변형하듯이, 프로그래밍 언어들도 기존의 취약한 점들은 보완하고 필요한 기능들을 추가하면서 발전해 나가고 있다. ES도 마찬가지로 Javascript를 발전시키기 위해서 기능 추가나 변경점을 추가한 버전업이라고 생각하면 된다.

ES6 (ES 2015)

이 버전은 ES6라고도 하고 ES2015라고도 하는데, 두개가 같은 버전이고 불리는 이름만 다르다. 이유는 뒤에 버전 숫자(3,4,5,6 등등)만 붙이면 갱신되는 ES의 발행의 진행이 보기 어렵다는 이유때문이다. 원래 ES는 몇년에 한 번씩 발표가 되었지만, ES5이후부터는 빠르게 변화하는 웹 생태계 때문에 1년에 한번씩은 갱신을 하자는 움직임들이 생겨나게 되었고, 이로 인해 단순한 숫자를 붙이기 보다는 갱신된 연도를 붙여서 새로운 이름을 만들자는 의견들이 생겨나게 되었다.

  1. Hoisting을 개선했다.
    기존에는 var키워드를 사용하여 호이스팅이 빈번하게 일어났는데 이를 방지하기 위해 블록 스코프를 가진 let과 const를 추가했다.
  2. 화살표 문법을 지원한다.
    장점 : 코드의 간결화, this를 바인딩하지 않는다. (예시 링크)
  3. iterator와 generator 추가.
  4. module의 import/export 추가.
  5. Promise 도입
    자바스크립트는 비동기적 언어이기 때문에 callback에 대한 이슈가 많았으나 이부분을 해결할 수 있는 문법을 제공한다.

마산에서 본 다리뷰

알고리즘을 열심히 풀어보는 한주 였는데
나름 하기 전보다는 반복문 사용에 익숙해진 것 같다.
주특기 입문도 시작했는데 아직은 재미있다.

되게 적극적이고 살갑던 동기 한명이 개인사정으로 갑작스레 하차하게 되어
너무너무너무 아쉽고 마음이 싱숭생숭했지만
다른 길이든 기수든 어디로 가든지 꼭 다같이 보기로 해서 괜찮다!

아직 내 집중 시간이 많이 아쉬우니 더 분발해야지

profile
개발 공부

0개의 댓글