日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

js中Error对象

發布時間:2023/12/18 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 js中Error对象 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

js中錯誤對象包括Error、EvalError、InternalError、RangeError、ReferenceError、SyntaxError、TypeError、URIError。

通過Error的構造器可以創建一個錯誤對象。當運行時錯誤產生時,Error的實例對象會被拋出。Error對象也可用于用戶自定義的異常的基礎對象。下面列出了各種內建的標準錯誤類型。

語法

new Error([message[, fileName[,lineNumber]]])

參數

message

可選。人類可閱讀的錯誤描述信息。

fileName?

可選。被創建的Error對象的fileName屬性值。默認是調用Error構造器代碼所在的文件 的名字。

lineNumber?

可選。被創建的Error對象的lineNumber屬性值。默認是調用Error構造器代碼所在的文件的行號。

當像函數一樣使用?Error?時?-- 如果沒有?new,它將返回一個?Error?對象。所以,?僅僅調用?Error?產生的結果與通過new?關鍵字構造?Error?對象生成的結果相同。?

// this: const x = Error('I was created using a function call!'); ????// has the same functionality as this: const y = new Error('I was constructed via the "new" keyword!');

除了通用的Error構造函數外,JavaScript還有6個其他類型的錯誤構造函數,這6種都是繼承了Error

?EvalError
? ? ? 創建一個error實例,表示錯誤的原因:與 eval() 有關。
InternalError?
? ? ? 創建一個代表Javascript引擎內部錯誤的異常拋出的實例。 如: "遞歸太多".
RangeError
? ? ? 創建一個error實例,表示錯誤的原因:數值變量或參數超出其有效范圍。
ReferenceError
? ? ? 創建一個error實例,表示錯誤的原因:無效引用。
SyntaxError
? ? ? 創建一個error實例,表示錯誤的原因:eval()在解析代碼的過程中發生的語法錯誤。
TypeError
? ? ? 創建一個error實例,表示錯誤的原因:變量或參數不屬于有效類型。
URIError
? ? ? 創建一個error實例,表示錯誤的原因:給 encodeURI()或 ?decodeURl()傳遞的參數無效。

共同點是都可以在對象原型下添加自定義屬性

可以取出來的參數有 message 和 stack 堆棧和name屬性

try{bucunzaihanshu() // 不存在函數必會報錯 }catch(e){//TODO handle the exceptionconsole.log(e.message);console.log(e.stack); }

try {throw new EvalError('Hello'); } catch (e) {console.log(e instanceof EvalError); // trueconsole.log(e.message); // "Hello"console.log(e.name); // "EvalError"console.log(e.stack); // "@Scratchpad/2:2:9\n" }

其他就不舉例了。

?

?

?

?

?

?

?

?

?

?

?

總結

以上是生活随笔為你收集整理的js中Error对象的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。