【JS/读书随笔】JavaScript编程精解/Eloquent JavaScript:Chapter 4 错误处理

一、 问题类型

编写程序是,遇到问题情境大致可以分成:程序员错误和运行时错误。如果程序员忘记给函数传入一个必须的参数,就是程序员错误;如果程序要求用户输入名字但返回的确实空字符串,这就是程序员无法控制的错误,即运行时错误。

二、 处理错误

异常处理:当函数由于某种原因不能正常返回时,要立即停止现在的操作,然后跳转到能够处理问题的位置。这就是异常处理。
异常处理工作原理:代码可以引发(抛出)异常,该异常是一个值。引发异常类似函数的超负荷返回值——不仅跳出当前函数,还会离开该函数的调用者,直到当前执行的最顶部,称为展开堆栈。
我们接下来沿着栈为异常设置障碍,抓住放大的异常并且进行相应处理,程序便可以在异常抛出点继续运行。
示例:

function lastElement(array){
    if(array.length > 0)
        return array[array.length - 1];
    else
        throw "Cannot take the last element of an empty array.";
        // throw 是引发异常的关键字

function lastElementPlusTen(array){
    return lastElement(array) + 10;
}

try{
    print(lastElementPlusTen([]));
catch(error){
    print("Something went wrong: ", error);
}
//关键字 try 用于设立异常障碍:如果代码块里的代码引发异常, catch 代码块将会执行,在执行的时候, catch 后面的变量将拥有该异常值。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值