핵심 답변
📌 비동기 함수는 병렬 구조로 처리됩니다.한 작업이 완료되지 않은 상태에서도 다음 작업을 실행할 수 있습니다.
네트워크 요청, 파일 입출력, 타이머 실행 등 시간이 필요한 작업에 사용
JavaScript는 단일 스레드(Single Thread)이지만 비동기 처리로 동시 작업에서도 효율적 동작
현대 비동기 문법
javascript
// Promise
fetch('/api/data')
.then(res => res.json())
.catch(err => console.error(err));
// Async/Await (더 읽기 쉬움)
async function getData() {
try {
const res = await fetch('/api/data');
return await res.json();
} catch (err) {
console.error(err);
}
}