java script
java script란?
자바스크립트는 복잡한 무언가(주기적으로 내용이 갱신되는 기능이나 능동적인 지도, 변화하는 2D/3D 그래픽, 동영상 등)를 웹페이지에 적용할 수 있게 하는 스크립트 혹은 프로그래밍 언어입입니다. 자바스크립트는 표준 웹 기술이라는 레이어 케이크에서 세번째 층이라고 볼 수 있습니다.
ES란
ECMAScript 는 Ecma 인터내셔널의 ECMA-262 기술 규격에 정의된 표준화된 스크립트 프로그래밍 언어입니다. 자바스크립트를 표준화하기 위해서 만들어졌으며 꼭 자바스크립트가 아니더라도 어도비 플래시를 사용하는 소프트웨어에서 사용하는 액션스크립트, MS 사의 인터넷 익스플로러에 쓰이는 J스크립트 등 다른 구현체들 역시 포함하고 있습니다.
ES5
- 배열
배열과 관련해서 새로운 메소드들이 많이 생겼는데 대표적으로
forEach, map, filter, reduce, some, every와 같은 순환 메소드들이 생겼다.
이 메소드들은 개발자가 반복 횟수나 조건을 잘못 입력하는 등의 실수를 줄여주는 효과가 있다. - 객체
일단 눈에 띄는 점은 객체의 프로퍼티에 대한 설정을 할 수 있다는 것이다.
객체를 생성/수정/복사하는 표준 메소드들(Object.create(), Object.defineProperty(), Object.freeze(), Object.assign() 등등)과 getter/setter 등등
또한 Object.keys 메소드를 쓰면 for in 메소드도 대체할 수 있게 된다. - strict 모드
문법을 좀 더 깐깐하게 체크하는 모드이다.
물론 이유없이 그러는 게 아니라 좀 더 코드를 안전하게(에러가 안 나게, 미연에 방지하고자) 등장했다. - bind()메소드
this를 강제로 bind 시켜주는 메소드이다. - JSON(JavaScript Object Notation)
과거 통신을 할 때 데이터를 XML 형태로 많이 주고 받았다.
하지만 JSON이 좀 더 경량화 돼있는지 요새는 JSON이 대세다.
JSON은 자바스크립트의 객체 리터럴과 생긴 건 유사한데 다음과 같은 차이점이 존재한다.
- 키는 무조건 쌍따옴표(“”)로 감싼 문자열이어야한다.
- 주석은 사용할 수 없다.
- 프로퍼티로 메소드는 불가능하다.
- 프로퍼티에서도 메소드의 사용이 불가능하다.
통신을 위해 Object를 JSON으로 바꾸는 방법은 JSON.stringify(obj)이고, 자바스크립트 코드에서 사용하기 위해 JSON은 Object로 바꾸는 방법은 JSON.parse(json)이다.
ES6
기존에 ES5에대한 문제를 해결 및 기능이 추가되었다.
- 호이스팅이 사라진것 같은 효과
- 함수단위 스코프에 블록단의 스코프로 변경
- this를 동적으로 바인딩하지 않는 애로우 평션
- 모듈화 지원
- 콜백 지옥의 구원자, Promise
- Default, Rest
- 해체 할당, Speread연산자
- 템플릿 리터럴
- 클래스
'기술' 카테고리의 다른 글
테스트코드 (0) | 2022.04.04 |
---|---|
CLASS (0) | 2022.04.04 |
ISO 8601 (0) | 2022.04.04 |
ORM, noSQL vs SQL (0) | 2022.04.03 |
Restful API, package.json (0) | 2022.03.31 |