分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 前端开发

关于js的异常

发布时间:2023-09-06 01:30责任编辑:蔡小小关键词:js

遇到异常,通常会有两种处理办法
1、处理异常

try{ ???//可能出现异常的代码}catch(e){ ???//处理异常}

2、抛出异常

public void getName throws Exception(){}

但是呢,我百度js的关键字竟然发现竟然很少有人去说thows。
为啥呢,难道js里没有,一查,果然没有
那它怎么抛出异常呢,毕竟我不想到处try啊???难道...js不用如果你不处理的话,会自动抛出去?
带着好奇的新,写了个小demo
,,,,果然是这样!!!js的语法页太不严谨了吧。

<!DOCTYPE html><html lang="en"> ???<head> ???????<meta charset="UTF-8"> ???????<title>Title</title> ???</head> ???<body> ???????<button>提交</button> ???????<script src="jquery-3.2.1.min.js" ></script> ???????<script> ???????????//模拟某个异步模块处理 ???????????var doSomething=function(){ ???????????????return new Promise(function(resolve, reject){ ???????????????????setTimeout(function(){ ???????????????????????var a=2;var b=0;var i=a/b;var result; ???????????????????????if(b==0){ ???????????????????????????reject(‘除数不能为0‘); ???????????????????????}else{ ???????????????????????????result={status:true,data:i} ???????????????????????} ???????????????????????resolve(result) ???????????????????},2000) ???????????????}) ???????????}; ???????????????????????//自己封装的服务 ???????????var service={// ???????????????getList:async function() throws Exception{你不用手动去抛出异常,调用者直接处理好了,这跟java是有区别的 ???????????????getList:async function() { ???????????????????var data=await doSomething();// ???????????????????var data;//我不在此处做处理// ???????????????????try{data=await doSomething();}catch(e){data=e;} ???????????????????return data; ???????????????} ???????????}; ???????????????????????//使用 ???????????$(‘button‘).click(function(){ ???????????????(async function(){// ?????????????????var data=await service.getList(); ???????????????????var data; ???????????????????try{data=await service.getList();}catch(e){data=e;}//直接处理好了 ???????????????????console.log(data) ???????????????})() ???????????}); ???????????????????</script> ???</body></html> 

再来看看人家java是如何抛出异常的

       public class Jsq{ ??????????????????//利用throws关键字声明该方法可能出现的异常 ????????????????????public void division(int a,int b) throws Exception{ ????????????????????????????????????????????return a/b; ???????????????????????????????????????/*或者手动抛出你定义的异常 ???????????????????if(b == 1){ ???????????????????????this.id = id; ???????????????????}else { ??????????????????????????throw new xxxException("除数为1,你觉得有意义吗?"); ??????????????????????}*/ ????????????????????} ??????????????}

不过呢,值得欣慰的是,js保留了其关键字,相信随着js的发展,这些关键字都会慢慢用上呢

关于js的异常

原文地址:http://www.cnblogs.com/flyings/p/8025526.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved