2008年12月12日

六種錯誤分類

Error | 六種錯誤分類

javascript 中有六種不同分類的錯誤物件:EvalError, RangeError, ReferenceError, SyntaxError, TypeError, URIError。不同的瀏覽器,可能會將同一個錯誤,放在不同的分類中。這幾個物件都繼承物件 Error 的特徵與方法。

EvalError | RangeError | ReferenceError | SyntaxError | TypeError | URIError
new EvalError([訊息])

使用函式 eval() 不當時,系統會拋出此物件實體。

  • 網路上有文件說 eval() 不可以間接使用,否則會發生錯誤。這個範例顯示,間接呼用eval() 並不會發生錯誤。

new RangeError([訊息])

呼用函式時,參數的數值超過有效範圍,系統會拋出此物件實體。會發生在建立陣列時;或呼用數值物件的方法 toExponential, toFixed, toPrecision 時。

new ReferenceError([訊息])

使用無效的記憶體位址時,系統會拋出此物件實體。

呼叫未定義的函式。

new SyntaxError([訊息])

解讀 eval() 的源碼時,發現文法錯誤,系統會拋出此物件實體。

new TypeError([訊息])

使用的變數或參數,其型態不符時,系統會拋出此物件實體。

new URIError([訊息])

呼用 encodeURI() or decodeURI() ,所給予的參數,不合 URI 格式,系統會拋出此物件實體。

特徵與方法

上述物件都繼承物件 Error 的特徵與方法。


©2008-2009 by ant2legs, All Rights Reserved. ant2legs 擁有其製作的文章,圖片與程式的著作權,所有權利保留。