JS常见错误(Error)及处理方案详解


Posted in Javascript onJuly 02, 2020

 1. 错误的类型

Error: 所有错误的父类型

错误的子类型包括:

  • ReferenceError: 引用的变量不存在

  • TypeError: 数据类型不正确的错误

  • RangeError: 数据值不在其所允许的范围内

  • SyntaxError: 语法错误

常见的内置错误:

(1)ReferenceError: 引用变量不存在

console.log(a) //ReferenceError: a is not defined

(2)TypeError: 数据类型不正确

var b = {}
b.xxx() //TypeError: b.xxx is not a function

(3)RangeError: 数据值不在其所允许的范围内

function fn(){
fn()
}
fn() //RangeError: Maximum call stack size exceeded

(4)SyntaxError: 语法错误

const c = """" //SyntaxError: Unexpected string

2. 错误处理

捕获错误: try ... catch

抛出错误: throw error

(1)捕获错误

try {
  let d
  console.log(d.xxx)
} catch (error) { //可以通过调试查看error对象的属性(message属性: 错误相关信息;stack属性: 函数调用栈记录信息)
 console.log(error.message)
 //console.log(error.stack)
}
// 可以继续向下执行
console.log('出错之后')

(2)抛出错误

function something() {
  if (Date.now() % 2 === 1 ){
  console.log('当前时间为奇数,可执行任务')
  } else {
  throw new Error('当前时间为偶数无法执行任务')
  }
}

//情况1 直接调用
something() //Error: 当前时间为偶数无法执行任务
console.log('something之后') //不会继续这句代码(没有对异常进行处理)

//情况2 捕获处理异常
try {
 something()
} catch(error) {
 console.log(error.message)
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js隐藏与显示回到顶部按钮及window.onscroll事件应用
Jan 25 Javascript
JS实现的在线调色板实例(附demo源码下载)
Mar 01 Javascript
jQuery Mobile框架中的表单组件基础使用教程
May 17 Javascript
Jquery删除css属性的简单方法
Dec 04 Javascript
Bootstrap select实现下拉框多选效果
Dec 23 Javascript
bootstrap datetimepicker日期插件使用方法
Jan 13 Javascript
JQuery.dataTables表格插件添加跳转到指定页
Jun 09 jQuery
微信小程序实现topBar底部选择栏效果
Jul 20 Javascript
JS使用队列对数组排列,基数排序算法示例
Mar 02 Javascript
小程序实现新用户判断并跳转激活的方法
May 20 Javascript
Vuex新手的理解与使用详解
May 31 Javascript
vue更改数组中的值实例代码详解
Feb 07 Javascript
vue过滤器实现日期格式化的案例分析
Jul 02 #Javascript
Vue使用预渲染代替SSR的方法
Jul 02 #Javascript
node运行js获得输出的三种方式示例详解
Jul 02 #Javascript
基于小程序请求接口wx.request封装的类axios请求
Jul 02 #Javascript
JS异步宏队列与微队列原理区别详解
Jul 02 #Javascript
微信小程序自定义扫码功能界面的实现代码
Jul 02 #Javascript
JS字符串和数组如何实现相互转化
Jul 02 #Javascript
You might like
用Apache反向代理设置对外的WWW和文件服务器
2006/10/09 PHP
PHP实现的蚂蚁爬杆路径算法代码
2015/12/03 PHP
php常用正则函数实例小结
2016/12/29 PHP
PHP基于自定义函数实现的汉字转拼音功能实例
2017/09/30 PHP
将jQuery应用于login页面的问题及解决
2009/10/17 Javascript
jquery利用ajax调用后台方法实例
2013/08/23 Javascript
jQuery中使用Ajax获取JSON格式数据示例代码
2013/11/26 Javascript
javascript数字时钟示例分享
2014/04/23 Javascript
jQuery实现友好的轮播图片特效
2015/01/12 Javascript
JS实现仿google、百度搜索框输入信息智能提示的实现方法
2015/04/20 Javascript
IE6-IE9使用JSON、table.innerHTML所引发的问题
2015/12/22 Javascript
js中json处理总结之JSON.parse
2016/10/14 Javascript
vue使用axios上传文件(FormData)的方法
2019/04/14 Javascript
微信小程序官方动态自定义底部tabBar的例子
2019/09/04 Javascript
vscode中Vue别名路径提示的实现
2020/07/31 Javascript
vue监听滚动事件的方法
2020/12/21 Vue.js
Python functools模块学习总结
2015/05/09 Python
python 全文检索引擎详解
2017/04/25 Python
Python编程实战之Oracle数据库操作示例
2017/06/21 Python
Python数据结构与算法之链表定义与用法实例详解【单链表、循环链表】
2017/09/28 Python
python简单图片操作:打开\显示\保存图像方法介绍
2017/11/23 Python
Python自定义函数实现求两个数最大公约数、最小公倍数示例
2018/05/21 Python
DataFrame 数据合并实现(merge,join,concat)
2020/06/14 Python
Python图像识别+KNN求解数独的实现
2020/11/13 Python
美国顶尖折扣时尚购物网:Bluefly
2016/08/28 全球购物
SportsDirect.com新加坡:英国第一体育零售商
2019/03/30 全球购物
俄罗斯护发和专业化妆品购物网站:Hihair
2019/09/28 全球购物
联强国际笔试题面试题
2013/07/10 面试题
企业统计员岗位职责
2013/12/13 职场文书
护士自我介绍信
2014/01/13 职场文书
内衣营销方案
2014/03/15 职场文书
经典禁毒标语
2014/06/16 职场文书
迎新生欢迎词
2015/01/23 职场文书
社区艾滋病宣传活动总结
2015/05/07 职场文书
2016拓展训练心得体会范文
2016/01/12 职场文书
Python3 如何开启自带http服务
2021/05/18 Python