遇到异常,通常会有两种处理办法
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的发展,这些关键字都会慢慢用上呢

最新文章

  1. Zookeeper的安装和使用
  2. sql数据库 管理处理问题--维护计划
  3. Android TestView文本文字修改实例
  4. JS模块化工具requirejs教程(一):初识requirejs
  5. spring框架七大模块
  6. 新建线程与UI线程间的通信
  7. DG下手工处理v$archive_gap方法
  8. 基于百度地图api + AngularJS 的入门地图
  9. Android之Fragment详解
  10. Spring(六)Spring执行流程
  11. linux的基本操作(mysql 的基本操作)
  12. Android-Activity启动流程
  13. 解题:CF1063F String Journey
  14. Java NIO.2 —— 文件或目录拷贝操作
  15. Catch That Cow--POJ3278
  16. 【Linux】文件操作系统调用
  17. HDU 6040 stl
  18. PS中10种样式操作
  19. wifi免密码登录认证流程
  20. Valgrind查找内存泄露利器

热门文章

  1. EF 序列化实体为Json时的循环引用问题(不用自己写实体,不用匿名类型,不用EF的上下文属性)
  2. 四个dos命令检查你的电脑是否中木马
  3. iphone中点击input不能选中input中的内容
  4. Django学习笔记第七篇--实战练习三--关于更有层级的url请求、404错误以及其他响应函数
  5. [SharePoint 2010] SharePoint 2010上多人同時編輯Office 2010文件
  6. System.getProperty()方法大全 (转载)
  7. git sourcetree忽略某些文件提交
  8. Ibatis的#和$的区别
  9. Golang学习-第一篇 Golang的简单介绍及Windows环境下安装、部署
  10. Storm 在ZK 上的目录图