728x90
프로미스 (Promise)
- 내용은 실행되었지만 결과를 아직 반환하지 않은 객체
- Then을 붙이면 결과를 반환함
- 실행이 완료되지 않았으면 완료된 후에 Then내부함수가 실행됨
- resolve(성공리턴값) -> then으로 연결
- Reject(실패리턴값) -> catch로 연결
- Finally 부분은 무조건 실행됨
const condition = true;
const promise = new Promise((resolve, reject) => {
if(condition) {
resolve('성공');
}
else {
reject('실패');
}
});
promise
.then((message) => {
console.log(message);
})
.catch((error) => {
console.error(error);
})
아래 두개는 같은 코드
function findAndSaveUser(Users) {
Users.findOne({})
.then((user) => {
user.name = 'zero';
return user.save();
})
.then((user) => {
reutrn Users.findOne({gender: 'm'});
})
.then((user) => {
//생략
})
async function findAndSaveUser(Users) {
let user = await Users.findOne({});
user.name = 'zero';
user = await user.save();
user = await Users.findOne({gender:'m'});
//생략
}반응형
'Full' 카테고리의 다른 글
| 노드 node process (0) | 2022.12.08 |
|---|---|
| 노드 node 현재 파일 경로, 현재 폴더 경로 (0) | 2022.12.07 |
| 모듈 만들기 (0) | 2022.12.07 |
| 노드 서버의 장단점 (0) | 2022.11.30 |
댓글