js容錯語句,就是js出錯也不提示錯誤(防止瀏覽器右下角有個黃色的三角符號,要不用戶體驗不好)
1,try...catch...
js的異常處理
在JavaScript可以使用try...catch來進行異常處理。例如:
try { foo.bar();} catch (e) { alert(e.name ": " e.message);}
目前我們可能得到的系統異常主要包含以下6種:
EvalError: raised when an error occurs executing code in eval()
RangeError: raised when a numeric variable or parameter is outside of its valid range 🎜> SyntaxError: raised when a syntax error occurs while parsing code in eval()
TypeError: raised when a variable or parameter is not a valid type
URIE paramemed orgem paramean orem) 🎜>上面的六種異常物件都繼承自Error物件。他們都支援以下兩種建構方法:
new Error();new Error("異常訊息");
手工拋出異常的方法如下:
如要判斷異常訊息的類型,可在catch中進行判斷:
Error具有下面一些主要属性:
description: 错误描述 (仅IE可用).
fileName: 出错的文件名 (仅Mozilla可用).
lineNumber: 出错的行数 (仅Mozilla可用).
message: 错误信息 (在IE下同description)
name: 错误类型.
number: 错误代码 (仅IE可用).
stack: 像Java中的Stack Trace一样的错误堆栈信息 (仅Mozilla可用).
因此为了更好的了解错误信息我们可以将catch部分改为如下形式:
JavaScript中的throw命令事实上可以抛出任何对象,并且我们可以在catch接受到此对象。例如: