js报错类型(6种错误类型)
js中的控制台的报错信息主要分为两大类,第一类是语法错误,这一类错误在预解析的过程中如果遇到,就会导致整个js文件都无法执行。另一类错误统称为异常,这一类的错误会导致在错误出现的那一行之后的代码无法执行,但在那一行之前的代码不会受到影响。
SyntaxError
// SyntaxError: 语法错误
// 1) 变量名不符合规范
var 1 // Uncaught SyntaxError: Unexpected number
var 1a // Uncaught SyntaxError: Invalid or unexpected token
// 2) 给关键字赋值
function = 5 // Uncaught SyntaxError: Unexpected token =
ReferenceError
我的理解:这玩意儿不存在
例子: console.log(sb)
// ReferenceError:引用错误(要用的变量没找到)
// 1) 引用了不存在的变量
a() // Uncaught ReferenceError: a is not defined
console.log(b) // Uncaught ReferenceError: b is not defined
// 2) 给一个无法被赋值的对象赋值
console.log("abc") = 1 // Uncaught ReferenceError: Invalid left-hand side in assignment
TypeError
我的理解:瞎几把调用
例子:
var a;
a() ; // 谁告诉你a是个函数了
// TypeError: 类型错误(调用不存在的方法)
// 变量或参数不是预期类型时发生的错误。比如使用new字符串、布尔值等原始类型和调用对象不存在的方法就会抛出这种错误,因为new命令的参数应该是一个构造函数。
// 1) 调用不存在的方法
123() // Uncaught TypeError: 123 is not a function
var o = {}
o.run() // Uncaught TypeError: o.run is not a function
// 2) new关键字后接基本类型
var p = new 456 // Uncaught TypeError: 456 is not a constructor
RangeError
// RangeError: 范围错误(参数超范围)
// 主要的有几种情况,第一是数组长度为负数,第二是Number对象的方法参数超出范围,以及函数堆栈超过最大值。
// 1) 数组长度为负数
[].length = -5 // Uncaught RangeError: Invalid array length
// 2) Number对象的方法参数超出范围
var num = new Number(12.34)
console.log(num.toFixed(-1)) // Uncaught RangeError: toFixed() digits argument must be between 0 and 20 at Number.toFixed
// 说明: toFixed方法的作用是将数字四舍五入为指定小数位数的数字,参数是小数点后的位数,范围为0-20.
EvalError
// EvalError: 非法调用 eval()
// 在ES5以下的JavaScript中,当eval()函数没有被正确执行时,会抛出evalError错误。例如下面的情况:
var myEval = eval;
myEval("alert('call eval')");
// 需要注意的是:ES5以上的JavaScript中已经不再抛出该错误,但依然可以通过new关键字来自定义该类型的错误提示。以上的几种派生错误,连同原始的Error对象,都是构造函数。开发者可以使用它们,认为生成错误对象的实例。
new Error([message[fileName[lineNumber]]])
// 第一个参数表示错误提示信息,第二个是文件名,第三个是行号。
URIError
// URIError: URI不合法
// 主要是相关函数的参数不正确。
decodeURI("%") // Uncaught URIError: URI malformed at decodeURI
// jzz
js报错类型(6种错误类型)相关推荐
- php js 报错信息,JavaScript中错误异常的分析(附示例)
本篇文章给大家带来的内容是关于JavaScript中错误异常的分析(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 我的建议是不要隐藏错误,勇敢地抛出来.没有人会因为代码出现 ...
- ie8 js未指明的错误_修复ueditor百度编辑器在IE8下shCore.js报错'undefined'错误的问题...
ueditor在IE8下点击任意文本框报脚本错误 错误问题: 在IE8下出现脚本错误 'undefined' 为空或不是对象 的问题 出现问题的文件为: 行数:299行 文件路径:ueditor\th ...
- 【前端】诸葛io收集前端js报错信息
转载请注明出处:http://www.cnblogs.com/shamoyuu/p/zhuge_error.html 一.什么是诸葛io 诸葛io就是通过分析用户的操作事件对用户数据,行为路径等进行分 ...
- win7设置ipsec_解决win7连接IPsec报错789和809错误
解决win-7连接IPsec报错789和809错误 萌新一枚,大神请飘过~~~ 最近遇到一个很沙雕的问题,win7连接IPsec一直报错789,百度方法解决掉后又报错809,809解决掉后继续报789 ...
- vue打包时候报错(压缩css错误) building for production...Error processing file: static/css/app.e8b75d3d19abc5bbb
报错信息如下 \ building for production...Error processing file: static/css/app.e8b75d3d19abc5bbbd9bd916f45 ...
- 使用JS报错 xx is not defined at HTMLAnchorElement.onclick
这里的情况特指在HTML里写的调用js报错的情况,根本原因是未找到函数(这里先不考虑函数名写错这种低级错误). 一般认为可以按如下方式解决: ----------------------------- ...
- Eclipse中导入项目后js报错解决方法
Eclipse中导入项目后js报错的原因与解决方法 在我们将项目导入Eclipse后,配置好各种编译条件.加载好jar包.配置好tomcat后发现项目还是报错,(前提是项目本身并没有错误,而是我们在初 ...
- Eclipse和MyEclipse使用技巧--解决MyEclipse中的js报错的小方法
今天,下了个模版,但是导进去的时候发现js会报错.看了下其他都没有错误.而有一个js报错误,请原谅我有点红色强迫症,不能留一点红色 . 错误如下: Syntax error on token &quo ...
- 【js监听报错】页面监听js报错问题
<html> <head> <script type="text/javascript">// 页面监听js报错问题 οnerrοr=handl ...
- JS报错:Cannot read property 'type' of undefined
在做图片上传功能的时候,遇到了JS无法识别图片type的问题,在使用过程中是没有问题的,但是不知道为什么浏览器的Console报这个错误: Uncaught TypeError: Cannot rea ...
最新文章
- 2021暑假实习-SSM超市积分管理系统-day07笔记
- intellij idea搭建springboot
- 实验2 java_《Java程序设计》实验2
- 【C语言进阶深度学习记录】二十二 指针的本质分析
- 嵌入式CANopen协议从入门到落地产品(更新2021.9.8)
- mysql统计信息表行数不准确_mysql SQL调优-统计信息不准的原因
- Sliverlight中使用Path绘制复杂几何图形
- win7计算机管理快捷键,win7系统快捷键有哪些|win7常用的15个快捷键
- Qt QWidget 软件开发模版
- Excel绘制折线图_基础整理
- 电子邮件服务器怎样匿名转发功能,技巧:你为什么不能匿名发送电子邮件
- 利用clamav为程序添加查毒功能
- 欧拉函数与积性函数(互质数)
- AlertDialog点击确定必定会dismiss问题
- 中蜂几月份自然分蜂_蜜蜂一年自然分蜂几次?
- 28岁程序员目前考虑转行,但又不知道自己能干什么
- mac怎么删除硬盘里面的东西?为什么苹果电脑无法删除移动硬盘文件?
- 【ZZULIOJ】1088: 手机短号 (多实例)
- 31、通信卫士--拦截黑名单电话
- Android.mk编译java动态库
热门文章
- 财务计算机专业英文怎么说,财务与计算机 英文简历模板
- OpenGL学习记录
- python二级考试报名多少钱_Python语言二级考试你准备好了吗?
- MyBatis-Plus——MyBatis-Plus概述与集成
- 关于 /proc/mounts
- 百旺智能编码_开票选码有神器,“智能赋码”教您一键匹配!
- PHP Warning: include(./sys/xxx.php): failed to open stream: No such file or directory
- iap进入app后 按复位按钮进入iap无法再进app问题
- 和尚与尼姑雨中相遇后不得不说的故事1
- STM32普中F103抢答器与抢答器的延时控制