항해99 - Week02 회고

ga_ding·2022년 3월 20일
0

WIL

목록 보기
2/13
post-thumbnail

이번주는 알고리즘을 통해 문법의 기초를 다지고 다음주 주특기 수업이 본격적으로 시작하기 전 언어와 친해지는 과정이었다.

문제는 프로그래머스로 진행했고 난이도별로 1번부터 28번까지 풀 수 있었지만, 더 풀 수 있는 사람은 54번까지도 풀 수 있었다.

먼저 5일차에 모의고사를 진행 후 7일차엔 시험을 진행했다.
5일차 모의고사엔 문제는 풀었는데 원하는 정답양식을 맞추지 못해서 되게 아쉬움도 많이 남고 과연 앞으로 잘 할 수 있을까 하는 나 자신을 향한 의심이 생겼다.
그리고 7일차 시험을 대비해서 이미 28번까지 풀었던 문제를 3회독 그리고 문제를 보고 입으로도 풀 수 있을정도로 익숙해졌다.
그 문제가 그대로 나오는건 아니었지만, 그래도 기초문법의 쓰임을 내 것으로 만들면 편하게 접근할 수 있을 것 같았기때문에..

ES란?

자바스크립트는 1990년대 Netscape 회사의 Brendan Eich 라는 사람에 의해 최초 개발됐다. 자바스크립트가 잘 되자, MS에서 Jscript라는 언어를 개발해 IE에 탑재하였는데, 이 두 스크립트가 너무 제가각이라, 표준이 필요했다.
표준을 위해 자바스크립트를 ECMA(European Computer Manufactures Association)라는 정보와 통신시스템의 비영리 표준 기구에 제출하였고 표준에 대한 작업을 ECMA-262란 이름으로 1996년 11월에 시작해 1997년 6월에 채택 되었고 ES란 ECMA Script의 약자다.

ES5/ES6 문법 차이

- ES3 (1999)
우리가 흔히 말하는 자바스크립트.
- ES5 (2009)
배열에 forEach, map, filter, reduce, some, every와 같은 메소드 지원
Object에 대한 getter / setter 지원
자바스크립트 strict 모드 지원 (더 깐깐한? 문법 검사를 한다.)
JSON 지원 ( 과거에는 XML을 사용하다가, json이 뜨면서 지원하게 됨 )

  • ES 2015 (ES 6)
  1. let, const 키워드 추가
    기존의 변수는 함수 scope를 가진 var 키워드를 이용하여 선언하였다. 때문에 block scope 를 가진 let과 const 키워드를 추가하였다. 기존에는 상수형 키워드가 없어 CONST_TEST와 같이 대문자로 상수임을 표시했다면, ES 6부터 const 키워드가 추가되어 값의 변경을 통제한다.
  2. arrow 문법 지원
    arror 문법은 두 가지의 장점을 제공한다. 첫 번째는 익숙하면 편하고 간결해진 코드를 작성할 수 있다. 두 번째는 this 를 바인딩하지 않는다. (다르게 말하면, this는 해당 scope의 this와 같다.)
    두 번째 this를 바인딩 하지 않는다는 코드로 설명하겠다. 우선 아래 코드를 보자. test 객체에 name변수와 fn이라는 메소드를 두었다. 아래 test.fun으로 메소드를 실행한다.
  3. iterator / generator 추가
  4. module import / export 추가
  5. Promise 도입

ES6 에서는 ES5 이하 명세에서 문제가 되었던 부분들이 해결되었고 많은 기능들이 추가됐고 이는 가독성과 유지보수성 향상으로 이어졌다.

profile
大器晩成

0개의 댓글

Powered by GraphCDN, the GraphQL CDN