JavaScript'te Promise Hatasını Nesne Olarak Atmak
reject işlevine bir hata dizgesi yerine bir hata nesnesi
geçirmek daha yaygındır:
let promise = new Promise(function(resolve, reject) {
setTimeout(function() {
reject(new Error('promise içinde hata')); // hata nesnesi
}, 3000);
});
Ayrıca, throw ile hata nesneleri atmak da mümkündür
- bu, onları reject'e geçirmeye eşdeğer olacaktır:
let promise = new Promise(function(resolve, reject) {
setTimeout(function() {
throw new Error('promise içinde hata'); // reject'e eşdeğer
}, 3000);
});
Aşağıdaki kodu öğrendiklerimiz doğrultusunda değiştirin:
let promise = new Promise(function(resolve, reject) {
setTimeout(function() {
let isError = false;
if (!isError) {
resolve('başarılı');
} else {
reject('hata');
}
}, 3000);
});