[ECMAScript 6] fat arrow function
fat arrow function(
이는 다른 함수에 콜백으로 함수를 넘겨야 하는 경우 요긴하게 사용된다.
하지만 단순히 길이가 짧다는 것만이 arrow function의 장점이 아니다. 오히려 중요한 특색은 arrow function은
JavaScript 함수의 가장 큰 특징 중 하나는 this가 dynamic binding 된다는 것이다. 보통은 큰 문제가 되지 않지만, 메소드를 콜백으로 넘겨주어야 하는 경우나 메소드를 변수로 받을 경우 원하는 대로 돌아가지 않았다.
ECMAScript 5에서는 Function에 bind 메소드가 추가되어 원하는 오브젝트를
=>
)는 ECMAScript 6에 추가된 익명 함수를 생성하는 새로운 방법이다. 기존의 함수를 만드는 것보다 짧게 함수를 만들 수 있다.이는 다른 함수에 콜백으로 함수를 넘겨야 하는 경우 요긴하게 사용된다.
하지만 단순히 길이가 짧다는 것만이 arrow function의 장점이 아니다. 오히려 중요한 특색은 arrow function은
this
를 lexical scope에서 찾는다는 것이다.JavaScript 함수의 가장 큰 특징 중 하나는 this가 dynamic binding 된다는 것이다. 보통은 큰 문제가 되지 않지만, 메소드를 콜백으로 넘겨주어야 하는 경우나 메소드를 변수로 받을 경우 원하는 대로 돌아가지 않았다.
ECMAScript 5에서는 Function에 bind 메소드가 추가되어 원하는 오브젝트를
this
로 바인드 한 함수를 만들 수 있지만, 매번 이런 작업을 하는 것은 귀찮은 일이다. 이제 ECMAScript 6에서는 이런 경우에 =>
을 이용하여 this
가 lexical binding 된 함수를 만들면 된다.
댓글
댓글 쓰기