你應該知道的七種 JavaScript 錯誤型別

語言: CN / TW / HK

在使用 JavaScript 時,我們可能會遇到各種各樣的錯誤,那你知道 JavaScript 常見的錯誤型別有哪些嗎?下面就來看看 JavaScript 中常見的錯誤型別。

1. SyntaxError

SyntaxError 表示語法錯誤。當錯誤的使用已經預定義的語法時會丟擲此錯誤。

2. TypeError

TypeError 表示型別錯誤。當值不是預期資料型別、呼叫無效方法時都會丟擲此錯誤。

3. ReferenceError

ReferenceError 表示引用錯誤。當找不到變數的引用、在變數作用域範圍之外使用變數、使用未宣告的變數時、在暫時性死區期間使用變數時都會丟擲此錯誤。

4. RangeError

RangeError 表示範圍錯誤。將變數設定在其限定的範圍之外、將值傳遞給超出範圍的方法、呼叫一個不會結束的遞迴函式時就會丟擲此錯誤。

5. URIError

URIError 表示 URI 錯誤。當 URI 的編碼和解碼出現問題時,會丟擲 URIError。JavaScript 中的 URI 操作函式包括:decodeURI、decodeURIComponent 等。如果使用了錯誤的引數(無效字元),就會丟擲 URIError。

6. EvalError

EvalError 表示 Eval 錯誤。當 eval() 函式呼叫發生錯誤時,會丟擲 EvalError。不過,當前的 JavaScript 引擎或 ECMAScript 規範不再丟擲此錯誤。但是,為了向後相容,它仍然是存在的。

7. InternalError

InternalError 表示內部錯誤。當 JavaScript 引擎上的工作負載突然激增時,會丟擲此錯誤。當有太多資料需要處理時,工作量就會激增,比如函式呼叫包含過多的遞迴或者過多的switch case時。

注意: 現代 JavaScript 中不會丟擲 EvalError 和 InternalError 錯誤。