[typescript] 비동기 이터레이션과 await for...of 문을 사용한 동기화 방법
본 포스트에서는 TypeScript에서의 비동기 이터레이션과 await for...of
문을 사용하여 비동기 작업을 동기화하는 방법에 대해 알아보겠습니다.
1. 비동기 이터레이션
비동기 이터레이션은 프로미스나 비동기 이터레이터를 순회할 수 있는 기능을 제공합니다. 이를 통해 비동기 작업을 동기적으로 처리할 수 있습니다.
async function* asyncGenerator() {
yield 1;
yield 2;
}
const asyncIterable = asyncGenerator();
for await (const item of asyncIterable) {
console.log(item);
}
위 코드에서는 asyncGenerator
함수를 통해 비동기 이터레이터를 생성하고, for await...of
문을 사용하여 이를 순회하고 있습니다.
2. await for…of 문을 사용한 동기화
await for...of
문은 async/await
와 함께 사용하여 비동기 이터레이터에서 순회하며 각 항목을 처리할 수 있습니다. 이를 통해 비동기 작업을 동기화하여 처리할 수 있습니다.
async function processData() {
const asyncIterable = asyncGenerator();
for await (const item of asyncIterable) {
const result = await asyncFunction(item);
console.log(result);
}
}
위 코드에서는 asyncFunction
을 호출하고, 각 항목에 대해 순차적으로 처리하고 있습니다.
이와 같이, await for...of
문을 사용하여 비동기 이터레이션을 동기화하고 처리하는 방법에 대해 알아보았습니다.
이제 TypeScript에서의 비동기 작업을 보다 효과적으로 처리할 수 있을 것입니다.