Java script/개념

Java Script의 ES(ECMA Screapt)란?

하로이 2022. 10. 2. 21:39
자바스크립트는 언어이고, ES는 규격, 표준 죽 스펙이다.

 

 

js는 10일이라는 정말 짧은 기간에 만들어진 언어이기 때문에 설계상의 미스가 있을 수 밖에 없다.

그렇기에 지속적으로 버전이 업그래이드 되면서 기능이 늘어 ES5,6 등이 생겨나게 되었다.

다음과 같이 살표 보자!

 

ES5 (2009)

ES4는 너무 급변하는 내용이 있었던지 거절되고, 바로 ES5가 나왔다.

 

배열

  • 배열
    배열과 관련해서 새로운 메소드들이 많이 생겼는데 대표적으로
    forEach, map, filter, reduce, some, every와 같은 순환 메소드들이 생겼다.
    이 메소드들은 개발자가 반복 횟수나 조건을 잘못 입력하는 등의 실수를 줄여주는 효과가 있다.
  • 객체
    일단 눈에 띄는 점은 객체의 프로퍼티에 대한 설정을 할 수 있다는 것이다.
    객체를 생성/수정/복사하는 표준 메소드들(Object.create(), Object.defineProperty(), Object.freeze(), Object.assign() 등등)과 getter/setter 등등
    또한 Object.keys 메소드를 쓰면 for in 메소드도 대체할 수 있게 된다.
  • strict 모드
    문법을 좀 더 깐깐하게 체크하는 모드이다.
    물론 이유없이 그러는 게 아니라 좀 더 코드를 안전하게(에러가 안 나게, 미연에 방지하고자) 등장했다.
    특징은 아래 링크를 통해 확인해보자.
    Strict mode - JavaScript | MDN
  • bind() 메소드
    this를 강제로 bind 시켜주는 메소드이다.
  • JSON(JavaScript Object Notation)
    과거 통신을 할 때 데이터를 XML 형태로 많이 주고 받았다.
    하지만 JSON이 좀 더 경량화 돼있는지 요새는 JSON이 대세다.
    JSON은 자바스크립트의 객체 리터럴과 생긴 건 유사한데 다음과 같은 차이점이 존재한다.
  • (키는 무조건 쌍따음표("")로 감싼 문자열, 주석은 사용 X, 프로퍼티로 메소드 불가능, 프로퍼티에서도 메소드의 사용이 불가능하다.)

ES6 (2015 IE9부터 지원)

원래는 ES6였는데 사람들이 끝자리인 6과 2016년을 연관짓는 습성 때문에 2016년에 나온 걸로 착각을 해서인지 ES2015로 바꾼 것 같다.

  • let, const 키워드 추가
  • arrow 문법 지원
  • iterator/generator 추가
  • modul import / export 추가
  • promise 도입

그럼 감사합니다!

'Java script > 개념' 카테고리의 다른 글

async / await  (0) 2022.10.25
기본타입 vs 참조타입  (0) 2022.10.08
함수 선언문 vs 함수 표현식  (1) 2022.09.30
함수 (function)  (1) 2022.09.24
switch  (0) 2022.09.24