화살표함수 : ES6에서 새로 도입한 축약형 형태의 함수
함수 표현식
const add = function (x, y){
return x + y
}
화살표 함수
const add = (x + y) => {
return x + y
}
화살표 함수는 function키워드를 화살표로 축약해서 표시 할 수 있다
함수의 본문에 return 만 있는 경우 화살표 함수는 이또한 생략 할 수 있다
이때 중요한 점은 {} 중괄호를 사용하면 안된다
const add = (x, y) => x + y
const add = (x, y) => (x + y) //add(1, 2) 3 정상 작동
const add = (x, y) => {x + y} //add(1, 2) undefined 작동 안함
함수내의 표현식이 두 줄 이상일 경우에는 return을 생략하기 보단 중괄호 하고 return 하는게 덜 헷갈림
또한 화살표 함수는 클로저와 사용했을 때 더 유용하다
함수 표현식
const adder = function(x) {
return function(y){
return x + y
}
}
adder(5)(7) // 12
화살표 함수
const adder = (x) =>{
return (y) => {
return x + y
}
}
adder(5)(7) // 12
만약 return까지 생략하면
const adder = x => y => x + y
화살표 함수의 틍징
1.call, apply, bind를 사용 할 수 없다
2.화살표 함수의 실행은 this를 결정짓지 않습니다