8. callback & promise

어니언·2023년 1월 29일
0
post-thumbnail

코드를 작성할 때 함수가 많이 쓰인다. 이때, 우리는 함수를 실행할 때 받게되는 인자값으로 문자열, 숫자열, 배열,객체등 다양한 데이터들을 받게되는데 이러한 인자값으로 함수자체도 받을 수 있는데 이때 이용되는 함수를 우리는 callback함수라고 부른다.

우리가 콜백함수를 사용하는 이유로는
첫번째 대상 함수 안에서 실행시키고 싶은 로직을 내가 작성하여 대상함수로 보내줄수 있기 때문이다.
두번째로는 대상함수로 부터 받아온 값을 인자로 처리 가능하기 때문이다.

콜백함수의 장점
함수를 굳이 정의하지 않더라도 익명함수로 전달이 가능하다
비동기처리방식의 문제점을 해결할 수 있다.
콜백함수만을 바꿔줌으로써 하나의함수로 여러가지를 응용할 수 있다.

콜백함수의 단점
콜백함수를 너무 많이쓰게되면 코드가 안으로 파고드는 콜백지옥에 빠지게되어 가독성이 떨어진다.
에러처리가 어렵다.

promise
콜백함수를 하면서 콜백지옥에 빠지는 것을 방지하기위한 promise기능이있는데 이는 안으로 파고드는 코드를 앞으로 정렬시켜 가독성을 높여준다.

promise만으로는 순서가 뒤죽박죽섞이게되는데 이문제점을 해결한 기능이 바로 async/await이다

콜백함수와 promise를 더 자세히 이해하기 위해서는
async await을 학습하면서 동기/비동기방식에 대해 공부를 한 후 작성할 때 자세히 적어보도록 해야겠다.

profile
안녕하세요.

0개의 댓글