issues
search
holdanddeepdive
/
javascript-deep-dive
3
stars
1
forks
source link
26장 ES6 함수의 추가기능 정리
#26
Open
Choozii
opened
2 years ago
Choozii
commented
2 years ago
ES6 이전의 모든 함수는 일반 함수뿐만 아니라 생성자 함수로서도 호출할 수 있다.
생성자 함수로 호출되지 않아도 프로토 타입 객체를 생성한다는 문제 있음
해당 문제를 해결하기 위해 ES6에서는 함수를 일반 함수, 메서드, 화살표 함수로 명확하게 구분했다.
ES6 메서드
foo(){ } <- 메서드 축약 표현으로 정의된 함수만을 의미
인스턴스를 생성할 수 없는 non-constructor
자신을 바인딩한 객체를 가리키는 내부 슬롯 [[HomeObject]]를 가진다 -> super 키워드를 사용할 수 있다.
화살표 함수
화살표 함수는 함수 자체의 this, arguments, super, new.target 바인딩을 갖지 않고 상위 스코프의 값을 참조한다.
스코프 문제 때문에 메서드를 화살표 함수로 정의하는 것은 피해야 함
rest 파라미터
파라미터 목록을 배열로 전달받을 수 있다.
sbyeol3
commented
2 years ago
https://github.com/lukehoban/es6features