728x90
기존방식
//함수선언식
function func(arg) {
...
}
//함수표현식
const func = function(arg) {
...
}
ES6 화살표 함수
const func = (arg) => {
...
}
기존의 함수표현식과 비슷한 형태로 사용되지만 this의 기준이 다르기 때문에
화살표함수가 완전히 기존 방식을 대체할 순 없다.
기존 함수에서의 this는 자신이 종속된 객체를 가리키고
화살표함수의 this는 자신이 종속된 인스턴스를 가리킨다.
클래스, 객체, 인스턴스 대한 구분은 아래를 참고하자.
클래스, 객체, 인스턴스
객체는 뭐고 객체는 뭐고 인스턴스는 뭔가? 그리고 클래스는 또 뭘까? 흔히들 클래스를 객체화한다거나 클래스를 인스턴스화 한다는 표현을 사용한다. 클래스는 말그대로 프로그래밍상 정의되
findmypiece.tistory.com
그외 화살표 함수는 값을 연산해서 바로 반환해야 할때 유용하게 이용될수 있다.
내부로직을 {}로 묶지 않으면 연산결과를 곧바로 반환한다는 의미이다.
연산결과를 곧바로 반환할 목적이지만
반환하려는 것이 객체리터럴 같이 {}를 포함하고 있다면
expression 전체를 반드시 ()로 묶어줘야 구문오류가 발생하지 않는다.
728x90
'Frontend > JavaScript' 카테고리의 다른 글
script 태그 async, defer 옵션 (0) | 2021.03.04 |
---|---|
콜백함수와 비동기처리 (0) | 2021.03.04 |
ES6 import, export (0) | 2021.03.03 |
ES6 전개연산자 (0) | 2021.03.03 |
ES6 제너레이터 함수 (0) | 2021.03.03 |