function getNumber() {
return new Promise((resolve, reject) => {
setTimeout(() => {
const randomNumber = Math.random();
if (randomNumber > 0.5) {
resolve(randomNumber);
} else {
reject("Number is too low");
}
}, 1000);
});
}
async function printNumber() {
const number = await getNumber();
console.log("The number is:", number);
}
printNumber();
The printNumber function is not handling the promise rejection. To fix this, you can add a try/catch block around the await statement:
function getNumber() {
return new Promise((resolve, reject) => {
setTimeout(() => {
const randomNumber = Math.random();
if (randomNumber > 0.5) {
resolve(randomNumber);
} else {
reject("Number is too low");
}
}, 1000);
});
}
async function printNumber() {
try {
const number = await getNumber();
console.log("The number is:", number);
} catch (error) {
console.log("Woops:", error);
}
}
printNumber();