본문 바로가기

HTML, CSS, Javascript

JavaScript : arrow function

arrow function 표현식은 일반 함수 표현식보다 더 간단하게 작성할 수 있다. 하지만 몇 가지 중요한 차이점과 제한이 있다.

  • arrow function은 자체적으로 this, arguments, super 키워드를 가지지 않는다. 그래서 일반적인 함수처럼 객체의 매서드로 사용하면 의도한 동작이 이루어지지 않을 수 있다.
  • arrow function은 new 키워드를 사용해 생성자로 사용하면 TypeError가 발생한다. 또한 생성자 함수에서 사용할 수 있는 new.target 키워드도 사용할 수 없다.
  • arrow function은 yield를 사용할 수 없다. 따라서 제네레이터 함수로 만들 수 없다. 제너레이터 함수는 함수 내부에서 yield 키워드를 사용하는데, arrow function은 이를 지원하지 않는다.

결론 : 간단한 콜백함수나 this를 유지해야 하는 경우에 적합하다.

 

 

 

자세한 문법 & 사용법은 아래 링크를 참고하자.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions