라이브러리
[JAVASCRIPT] async function myFunc() {} - 비동기 함수를 정의
async/await: JavaScript의 비동기 처리
JavaScript는 싱글 스레드 언어로, 동기적이기 때문에 한 번에 하나의 작업만 처리할 수 있습니다. 하지만, 웹 애플리케이션은 사용자와 상호작용하는 동안, 서버와 통신하거나 데이터베이스에 접근하는 등 다양한 비동기 작업을 수행해야 합니다. 이때, `async/await` 문법이 도움이 됩니다.
async function
`async function`은 비동기 함수를 정의하는 문법입니다. 이 함수는 `await` 키워드를 사용하여 비동기 작업을 처리할 수 있습니다.
#hostingforum.kr
javascript
async function myFunc() {
// 비동기 작업을 처리할 코드
}
await 키워드
`await` 키워드는 비동기 작업을 처리할 때 사용하는 문법입니다. 이 키워드는 함수 내에서 사용할 수 있으며, 함수가 비동기 작업을 처리할 때까지 함수의 실행을 멈추고, 비동기 작업이 완료되면 함수의 실행을 재개합니다.
#hostingforum.kr
javascript
async function myFunc() {
const result = await 비동기 작업;
// 비동기 작업이 완료된 후 처리할 코드
}
예제:
#hostingforum.kr
javascript
// 비동기 함수
function 비동기 작업() {
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve("비동기 작업 완료");
}, 2000);
});
}
// async function
async function myFunc() {
const result = await 비동기 작업();
console.log(result); // 비동기 작업 완료
}
// async function 호출
myFunc();
위 예제에서, `비동기 작업` 함수는 `setTimeout` 함수를 사용하여 2초 후에 `비동기 작업 완료` 문자열을 반환하는 Promise를 반환합니다. `myFunc` 함수는 `await` 키워드를 사용하여 `비동기 작업` 함수를 호출하고, 결과를 `result` 변수에 저장합니다. `myFunc` 함수가 호출되면, `비동기 작업` 함수가 완료되기까지 함수의 실행을 멈추고, `비동기 작업` 함수가 완료되면 `result` 변수에 저장된 문자열을 `console.log` 함수를 사용하여 출력합니다.
async/await의 장점
* 비동기 작업을 처리할 때, 코드의 가독성을 높일 수 있습니다.
* 비동기 작업을 처리할 때, 에러를 처리할 수 있습니다.
* 비동기 작업을 처리할 때, 코드를 더 쉽게 테스트할 수 있습니다.
async/await의 단점
* 비동기 작업을 처리할 때, 함수의 실행을 멈추기 때문에, 함수의 성능이 저하될 수 있습니다.
* 비동기 작업을 처리할 때, 에러를 처리할 때, try-catch 블록을 사용해야 합니다.
async/await의 사용
* 비동기 작업을 처리할 때, `async/await` 문법을 사용할 수 있습니다.
* `async/await` 문법을 사용할 때, `await` 키워드를 사용하여 비동기 작업을 처리할 수 있습니다.
* `async/await` 문법을 사용할 때, `try-catch` 블록을 사용하여 에러를 처리할 수 있습니다.
댓글목록
등록된 댓글이 없습니다.