Saya ingin menulis handler kesalahan umum yang akan menangkap kesalahan kustom yang dilemparkan dengan sengaja pada setiap contoh kode.
Ketika saya throw new Error('sample')
suka dalam kode berikut
try {
throw new Error({'hehe':'haha'});
// throw new Error('hehe');
} catch(e) {
alert(e);
console.log(e);
}
Log menunjukkan di Firefox sebagai Error: [object Object]
dan saya tidak dapat menguraikan objek.
Untuk yang kedua throw
log ditampilkan sebagai:Error: hehe
Sedangkan ketika saya melakukannya
try {
throw ({'hehe':'haha'});
} catch(e) {
alert(e);
console.log(e);
}
konsol ditampilkan sebagai: Object { hehe="haha"}
di mana saya dapat mengakses properti kesalahan.
Apa bedanya?
Apakah perbedaannya seperti yang terlihat dalam kode? Seperti string akan hanya diteruskan sebagai string dan objek sebagai objek tetapi sintaks akan berbeda?
Saya belum menjelajahi objek melempar kesalahan ... Saya hanya melakukan melempar string.
Apakah ada cara lain selain dua metode yang disebutkan di atas?
Error
s