轩枫阁

首页 / 授人以渔 / Javascript / javascript的异常处理你了解吗?

javascript的异常处理你了解吗?

前言

异常处理运行在浏览器端Javascript受宿主环境、浏览器插件、运营商劫持、第三方代码等等因素的影响导致,javascript在浏览器端出现各种各样的异常情况。

Error对象及其衍生对象

Error对象有两个最基本的属性:

  • name:错误名称
  • message:错误提示信息

 

除了Error对象,JavaScript还定义了其他6种错误,即存在Error的6个衍生对象

  • EvalError:执行代码时发生的错误
  • RangeError:当一个数值型变量或参数超出有效范围时发生的错误
  • ReferenceError:引用一个不存在的变量时发生的错误
  • SyntaxError:解析代码时发生的语法错误
  • TypeError:变量或参数的类型无效时发生的错误
  • URIError:向encodeURI() 或者 decodeURI() 传入无效参数时发生的错误

捕获异常及其处理

方式一:用try语句捕获必要异常

try…catch语句允许最后有一个finally代码块,表示不管是否出现错误,最后都会运行finally的语句。

方式二:如果没有异常的捕获可以通过监听window.onerror来处理异常

window.onerror 讲接收3个参数:

  • msg:错误描述,比如:a is not defined
  • url:出错脚本所在的url
  • lineNumber:出错脚本的行数

throw语句的作用是中断程序执行,抛出一个意外或错误。它接受一个表达式作为参数。

throw可以接受各种值作为参数。JavaScript引擎一旦遇到throw语句,就会停止执行后面的语句,并将throw语句的参数值,返回给用户。

如果只是简单的错误,返回一条出错信息就可以了,但是如果遇到复杂的情况,就需要在出错以后进一步处理。这时最好的做法是使用throw语句手动抛出一个Error对象。

本文标题:javascript的异常处理你了解吗? - 轩枫阁

转载请务必注明出处,欢迎分享

如果觉得我的文章对您有用,请随意打赏
赞  赏
赞赏作者 轩枫-ivan
¥ 6.66
换个金额 使用微信扫一扫赞赏
  • 6.66
  • 8.88
  • 16.8
  • 2.33
  • 52.0
  • 20.0
  • 自定义
  • 10.0
246/456
248/456

相关文章

文章评论

纸飞机许愿

x

钢琴节奏

请选择弹奏的曲谱

    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 1
    • 2

    [返回曲谱列表]