Tôi muốn viết một trình xử lý lỗi phổ biến sẽ bắt lỗi tùy chỉnh được ném vào mục đích tại bất kỳ trường hợp nào của mã.
Khi tôi đã throw new Error('sample')
thích như sau trong đoạn mã sau
try {
throw new Error({'hehe':'haha'});
// throw new Error('hehe');
} catch(e) {
alert(e);
console.log(e);
}
Nhật ký hiển thị trong Firefox Error: [object Object]
và tôi không thể phân tích đối tượng.
Trong lần thứ hai throw
, nhật ký hiển thị là:Error: hehe
Trong khi đó tôi đã làm
try {
throw ({'hehe':'haha'});
} catch(e) {
alert(e);
console.log(e);
}
Bảng điều khiển hiển thị như sau: Object { hehe="haha"}
trong đó tôi có thể truy cập các thuộc tính lỗi.
Sự khác biệt là gì?
Là sự khác biệt như đã thấy trong mã? Like chuỗi sẽ chỉ được truyền dưới dạng chuỗi và đối tượng là đối tượng nhưng cú pháp sẽ khác nhau?
Tôi chưa khám phá ra việc ném lỗi đối tượng, tôi đã thực hiện chỉ ném dây.
Có cách nào khác ngoài hai phương pháp nêu trên không?
Error
s