728x90
오늘 중요한 것을 정리하면서 기억할 필요가 있는 것 1~2가지
비동기 함수는 키가 붙음 ( async)
sync : 동기
async : 비동기
비동기함수는 Promise를 리턴합니다. Promise는 파라미터로 익명의 함수를 가집니다.
async function fetchData() {
/// 데이터 처리
return new Promise(function (resolve, reject) {
if (true) {
resolve("데이터 로드 성공");
} else {
reject("데이터 로드 실패");
}
});
}
async function main() {
try {
// 성공하면
// result = "데이터 로드 성공"
const result = await fetchData();
} catch (error) {// error에 reiect(실패)의 값이 들어갑니다.
// 실패하면
// error = "데이터 로드 실패"
console.log(error);
}
}
'return new Promise()' 는 아래 코드를 줄인 것 입니다.
let promise = new Promise;
return Promise
'new'로 시작하는 변수의 경우 생성자를 받습니다.
new 변수명 (생성자)
비동기 함수의 형태를 외워두세요
//비동기 함수
async function fetchData() {
return new Promise(function (resolve, reject) {
if (true) {
resolve("데이터 로드 성공");
} else {
reject("데이터 로드 실패");
}
});
}
resolve : 성공 시 호출. 리졸브 호출 시 리졸브값 받음
reject : 실패 시 호출. try catch문에서 catch문에 error로 걸림