object
- 메소드의 function을 생략할 수 있음
- 변수명과 속성명이 같은 경우 생략가능
EX 1
EX 2
arrow function
- 화살표 함수는 prototype 프로퍼티를 가지고 있지 않음 -> 생성자 함수로 사용할 수 없음
- 화살표 함수는 arguments 객체를 가지고 있지 않음
EX 3
EX 4
EX 5
⇒ 화살표 함수는 자신을 포함하고 있는 상위 컨텍스트로부터 this를 계승 받는다.
⇒ 메소드로 정의한 화살표 함수 내부의 this는 상위 컨택스트인 window 객체를 가리킨다.
그러므로 화살표 함수로 메소드를 정의하는 것은 피해야 한다.
spread 연산자
- 연산자의 대상을 개별 요소로 분리함
EX 6
rest연산자
- 나머지를 할당 받는 배열
- 그러므로 반드시 마지막에 위치해야함
EX 7
EX 8
EX 9
⇒ arguments 객체는 유사 배열 '객체' 이기때문에 배열 메소드를 쓰려면 Function.prototype 을 이용해야하지만
rest 파라미터는 배열이기 때문에 바로 배열 메소드를 사용할 수 있다.
파라미터 기본값
- 함수를 정의할 때 파라미터의 기본값을 설정가능
EX 10
⇒ ES5에서는 || 처리 시 0 또는 false 값이 입력되어도 기본값으로 대체되지만
ES6에서 파라미터 기본값을 사용하면 undefined 를 제외한 0, false, null 등은 인정된다.
'ES6' 카테고리의 다른 글
generator (0) | 2018.08.23 |
---|---|
for of (0) | 2018.08.22 |
class (0) | 2018.08.16 |
let / const (0) | 2018.08.12 |