這篇文章主要介紹關于JS常見錯誤及處理方法的分析,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
1. 錯誤的類型
Error: 所有錯誤的父類型
錯誤的子類型包括:
常見的內置錯誤:
(1)ReferenceError: 引用變量不存在
console.log(a) //ReferenceError: a is not defined
(2)TypeError: 數據類型不正確
var b = {}
b.xxx() //TypeError: b.xxx is not a function
(3)RangeError: 數據值不在其所允許的范圍內
function fn(){ fn() } fn() //RangeError: Maximum call stack size exceeded
(4)SyntaxError: 語法錯誤
const c = """" //SyntaxError: Unexpected string
2. 錯誤處理
捕獲錯誤: try ... catch
拋出錯誤: throw error
(1)捕獲錯誤
try { let d console.log(d.xxx) } catch (error) { //可以通過調試查看error對象的屬性(message屬性: 錯誤相關信息;stack屬性: 函數調用棧記錄信息) console.log(error.message) //console.log(error.stack) } // 可以繼續向下執行 console.log('出錯之后')
(2)拋出錯誤
function something() { if (Date.now() % 2 === 1 ){ console.log('當前時間為奇數,可執行任務') } else { throw new Error('當前時間為偶數無法執行任務') } } //情況1 直接調用 something() //Error: 當前時間為偶數無法執行任務 console.log('something之后') //不會繼續這句代碼(沒有對異常進行處理) //情況2 捕獲處理異常 try { something() } catch(error) { console.log(error.message) }
以上是關于JS常見錯誤及處理方法的分析的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。