异常枚举;

1.异常:程序运行中意外发生的情况

2.除法运算

例子:

程序出现异常后会停止运行

javascript 复制代码
function chu(num1: number, num2: number) {
    if (num2 == 0) {
        //抛出异常
        throw new Error('除数不能为零')
    }
    let num: number = num1 / num2
    console.log(num);
}

3.捕获异常

javascript 复制代码
try {//尝试执行有可能有异常的代码块
    chu(1, 0)
} catch (error) {//对异常进行处理
    //error 出现的错误
    //console.log(error);
}
chu(1, 1)

练习:

1.模拟在文本框输入一个考试成绩,并分级

javascript 复制代码
let num3: string = 'asd34.5'
function getNum(num: string): number {
    if (parseFloat(num)) {
        return parseFloat(num)
    } else {
        throw new Error('必须输入数字')
    }
}

2.主动捕获异常

javascript 复制代码
try {
    if (getNum(num3) > 60) {
        console.log('及格');

    } else {
        console.log('不及格');
    }
} catch (err) {
    console.log('不及格');
}

3.模拟输入一个年龄,输完年龄之后,提示输入成功

不管是不是出现异常,都需要提示输入成功

例子:

javascript 复制代码
let num: string = '12'
//转化年龄
function getNum1(num: string): number {
    if (parseInt(num)) {
        return parseInt(num)
    } else {
        throw new Error('年龄输入错误')
    }
}
function ts() {
    try {
        console.log('模拟输入的值为' + num);
        let age = getNum(num)
        console.log('年龄是:' + age);

    } catch (error) {

    } finally {
        //异常的最终解决方案
        //finally 无论是否出现异常都要执行
        console.log('输入成功');

    }

}
ts()

异常的处理方式

1.主动捕获异常 try catch finally

try{

有可能出现异常的代码

}catch(error){

对异常的处理

}finally{

无论是否有异常,都会执行代码

}

2.抛出异常

throw new Error('提示词')

例子:

思考 return和finally的执行顺序

先执行finally,然后在执行return

javascript 复制代码
function aa() {
  try {
    //异常代码
    return 123
  } catch (e) {
    return 456
  } finally {
    console.log('asdfghjk');
  }
}
let a=aa();
console.log(a);
相关推荐
可峰科技3 分钟前
斗破QT编程入门系列之二:认识Qt:编写一个HelloWorld程序(四星斗师)
开发语言·qt
清灵xmf6 分钟前
TypeScript 类型进阶指南
javascript·typescript·泛型·t·infer
全栈开发圈7 分钟前
新书速览|Java网络爬虫精解与实践
java·开发语言·爬虫
面试鸭11 分钟前
离谱!买个人信息买到网安公司头上???
java·开发语言·职场和发展
小白学大数据12 分钟前
JavaScript重定向对网络爬虫的影响及处理
开发语言·javascript·数据库·爬虫
Python大数据分析@15 分钟前
python操作CSV和excel,如何来做?
开发语言·python·excel
qq_3901617721 分钟前
防抖函数--应用场景及示例
前端·javascript
上海_彭彭40 分钟前
【提效工具开发】Python功能模块执行和 SQL 执行 需求整理
开发语言·python·sql·测试工具·element
334554321 小时前
element动态表头合并表格
开发语言·javascript·ecmascript
John.liu_Test1 小时前
js下载excel示例demo
前端·javascript·excel