[Javascript] 화살표 함수와 콜백 함수

Jane Yeonju Kim·2022년 1월 26일
1

JavaScript

목록 보기
7/14
post-thumbnail

화살표 함수 (익명함수)

일반 함수의 일부를 생략해서 선언하는 방법이 여러 가지가 있는데
그 중에서 화살표를 사용하여 이름이 없는 함수를 만드는 것이 화살표 함수이다.

함수를 축약해서 사용할 때는 보통 변수에 담아서 사용한다.

// 함수 이름을 생략
const sum = function(x, y){ return x + y } 
// 함수 예약어를 생략하면서 화살표 사용
const double = (x) => { return x * 2 }
// 함수의 소괄호, 중괄호도 생략 가능 (파라미터나 return문이 하나거나 한줄일때)
const pow = x => x ** 2 

console.log(sum(1,2))     // 3
console.log(double(2))    // 4
console.log(pow(3))       // 9

익명함수라는 점에서 파이썬의 lambda함수와 비슷한거 아닌가?라고 생각했지만
화살표 함수는 일반 함수와 차이점이 있다.
차이점은 초보자용이 아님!

일반함수화살표함수
호이스팅OX
생성자함수OX
외부의 this 재사용XO
  • 호이스팅: 선언 전에 호출 가능
  • 생성자 함수: new 예약어와 같이 쓰이며 새로운 객체를 반환한다.
  • 외부의 this 재사용: 화살표 함수는 나오는 위치의 바깥 범위의 this를 가져온다. (html에서의 위치)

+ 추가 예정


콜백함수

함수의 인자로 들어가는 함수
순차적으로 실행하고 싶을 때 쓴다.

You가 먼저 나오고 Win이 그 다음에 나오게 하려고 win()함수를 콜백함수로 사용했다. 필요성은 비동기를 배우면서 자세히 알게 될 것 같다..

// 첫번째로 사용할 함수
function print(func) {
  return "You " + func()
}                       

// 두번째로 사용할 함수
function win(name) {
  return "Win!"
}

let result = print(win)
console.log(result)      // You Win!
profile
안녕하세요! 김개발자입니다 👩‍💻 🐈

0개의 댓글