function workP(condition) {
return new Promise((resolve, reject) => {
if (condition) {
resolve("상쾌해~");
}
reject("불쾌해!");
});
}
async function conditionCheck() {
try {
const feeling = "good";
if (feeling === true) {
const result = await workP(feeling);
console.log(result);
} else {
throw new Error(await workP(feeling));
}
} catch (err) {
console.error("하기 싫은 상태:", err);
}
}
conditionCheck();
이런 코드가 있을 때 conditionCheck()함수에서 const feeling = "good"이라는 변수를 만들고 조건문에서 feeling이 true와 같은지 검사한 후 참이면 workP()함수에서 condition이 true면 resolve()함수로 "상쾌해~"를 리턴하고 아니면 reject()함수로 "불쾌해!"를 리턴하게 하려합니다. 그런데 코드에서는 feeling 변수가 true상태인데 출력하면 아래와 같습니다.
하기 싫은 상태: Error: 상쾌해~
at conditionCheck....
feeling 변수가 false 상태이면
하기 싫은 상태: 불쾌해!
이렇습니다.
제가 원하는 결과는 feeling이 true면 상쾌해~
를 출력하고 false면
하기 싫은 상태: Error: 불쾌해!
at conditionCheck
를 출력하게 하고 싶은데 뭔가 정반대로 된 거 같습니다. 해결 방안좀 알려주세요!