티스토리 뷰

프론트엔드/React

async, await

yyoujg 2022. 6. 4. 14:44

1. async

함수 앞에 async를 붙여서 사용한다.

항상 프라미스를 반환한다. (프라미스가 아닌 값이라도, 프라미스로 감싸서 반환해준다.)

// async는 function 앞에 써준다.
async function myFunc() {
	return "프라미스를 반환해요!"; // 프라미스가 아닌 것을 반환한다.
}

myFunc().then(result => {console.log(result)}); // 콘솔로 확인

2. await

async와 함께 쓰인다. (async 없이는 못쓴다.)

async 함수 안에서만 동작한다.

await는 프라미스가 처리 될 때까지 기다렸다가 그 이후에 결과를 반환한다.

async function myFunc(){
	let promise = new Promise((resolve, reject) => {
		setTimeout(() => resolve("완료!"), 1000);
	});

    console.log(promise);

	let result = await promise; // 여기서 기다리자!하고 신호를 준다.

    console.log(promise);

	console.log(result); // then(후처리 함수)를 쓰지 않았는데도, 1초 후에 완료!가 콘솔에 찍힌다.
}

await을 만나면, 실행이 잠시 중단되었다가 프라미스 처리 후에 실행을 재개한다.

즉. await을 쓰면 함수 실행을 기다리게 하는 것이다.

'프론트엔드 > React' 카테고리의 다른 글

ContextAPI()  (0) 2022.06.04
상태관리  (0) 2022.06.04
Promise  (0) 2022.06.04
Redux 기본 세팅  (0) 2022.06.02
Redux Middleware  (0) 2022.06.02
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함