async / await

윤라윤·2022년 11월 18일
0
post-custom-banner

우선 이 둘을 알기 전에 동기와 비동기의 차이를 알아야한다.
비동기는 코드가 끝날때 까지 코드의 실행을 멈추지 않고 다음 코드를 먼저 실행하는 것이고 동기는 요청을 보내고 응답을 받아야지 다음의 동작이 이루어지는 방식이다. 즉 어떠한 프로세스를 처리할 동안 나머지는 대기한다는 것이다.

async 와 await는 자바스크립트의 비동기 처리 패턴의 문법이다.
기본 문법은

async function 함수명() {
  await 비동기처리메소드();
}

await는 async함수 안에서만 동작한다. await는 기다리라는 뜻의 의미인데 의미 그대로 기다리고 결화는 이후에 반환된다.

callback함수

함수를 실행할 때 바덱 되는 인자값으로 문자, 숫자,배열, 객체 등 다양한 데이터를 받게 된다. 이런 인자값에 함수 자체를 받을 수 있는데 그것이 바로 callback 함수이다.

callback 함수를 사용하는 이유

  1. 대상 함수 안에서 실행시키고 싶은 로직(함수)를 내가 작성해서 대상 함수로 보내줄 수 있다.
  2. 대상 함수로부터 받아온 값을 인자로 처리 가능
function aaa(qqq){
	// 외부 API에 데이터 요청하는 로직
	// ...
	// ...
	// 요청 완료!
	const result = "요청으로 받아온 데이터 결과값"

	qqq(result) // 요청 끝나면 qqq 실행 시키기
}

aaa((result) => {
	console.log("요청으로 끝났습니다.")
	console.log("요청으로 받아온 데이터는 " + result + "입니다")
}) //     : 2차적 처리를 위한 로직
profile
개발 공부중
post-custom-banner

0개의 댓글