<aside> 💡 다른 함수가 실행을 끝낸 뒤 실행되는 callback되는 함수 정확하게는 콜백함수는 파라미터로 전달받은 함수

</aside>

add 함수를 통한 값을 printResult함수의 인자로 전달하는 코드

function add(x, y) {
    return x + y
}

function printResult(result) {
    console.log(result)
}

printResult(add(10,20))

callback함수로 구현

function add(x, y, print) {
    print(x + y)
}

function printResult(result) {
    console.log(result)
}

add(10, 20, printResult)

익명 함수를 인자로 전달

	function add(x, y, print) {
    print(x + y)
}

add(10, 20, (result) => {
    console.log(result)
})

CallBack 함수의 장단점

콜백함수를 사용하면서 얻는 이점은 다음과 같습니다.

하지만 콜백함수를 사용하면 다음과 같은 단점이 있습니다.

콜백함수를 이용한 비동기처리

<aside> 💡 **비동기(Asynchronous)**란 특정 코드의 실행이 끝날 때 까지 기다리지 않고 다음 코드로 바로 넘어가는 것을 의미

</aside>