JS常见的报错类型
解决错误前,首先要学会阅读报错信息
eg:Uncaught TypeError: ... is not a function
Uncaught 表示没有被catch语句捕获到的错误
TypeError 是错误类型
... is not a function 是消息体
整体意思就是: 代码尝试将...当作函数来使用,但是该...并不是一个函数
1.Uncaught TypeError: Cannot read property '' of undefined
常见的一种是在渲染 UI 组件时对于状态的初始化操作不当,当你读取一个未定义的对象的属性或调用其方法时,这个错误会在 Chrome 中出现。
2.TypeError: ‘undefined’is not an object
这是在 Safari 中读取属性或调用未定义对象上的方法时发生的错误,Safari 使用了不同的错误消息提示语。
3.TypeError: 'null' is not an object
这是在 Safari 中读取属性或调用空对象上的方法时发生的错误,Safari 使用了不同的错误消息提示语。
undefined 通常是一个尚未分配的变量,而 null 表示该值为空。 要验证它们不相等,请尝试使用严格的相等运算符 ===
这种错误可能发生场景是:在加载元素之前尝试在 JavaScript 中使用元素。 因为 DOM API 对于空白的对象引用返回值为 null。
4.(unknown): Script error
当未捕获的 JavaScript 错误(通过window.onerror处理程序引发的错误,而不是捕获在try-catch中)被浏览器的跨域策略限制时,会产生这类的脚本错误。这是一种浏览器安全措施,旨在防止跨域传递数据,否则将不允许进行通信。
5.TypeError: Object doesn’t support property
这是您在调用未定义的方法时发生在 IE 中的错误。 您可以在 IE 开发者控制台中进行测试。
6.TypeError: ... is not a function
调用未定义的函数时,在 Chrome 中产生的错误
7.Uncaught RangeError: Maximum call stack
当你调用一个不终止的递归函数时或者将值传递给超出范围的函数,会报出的错,检查函数的递归调用,确保函数不是无限递归的
8. TypeError: Cannot read property ‘length’of undefined
因为读取未定义变量的长度属性,通常会在数组中找到定义的长度,但是如果数组未初始化或者变量名称在另一个上下文中隐藏,则可能会遇到此错误。
var testArray = ["Test"];
function testFunction(testArray) {
for (var i = 0; i < testArray.length; i++) {
console.log(testArray[i]);
}
}
testFunction();
当你用参数声明一个函数时,这些参数变成了函数作用域内的本地参数。这意味着即使你函数外有名为 testArray 的变量,在一个函数中具有相同名字的参数也会被视为本地参数。
9.Uncaught TypeError: Cannot set property ... of undefined
尝试访问一个未定义的变量时,它总是返回 undefined,我们不能获取或设置任何未定义的属性。
10.ReferenceError: ... is not defined
当您尝试访问未定义的变量或超出当前范围的变量时,会引发此错误。
11.Uncaught exception: ReferenceError: Cannot assign to ‘this’
尝试给一个不能被赋值的变量赋值时将发生该错误,确保不给函数函数的返回值或 this 关键字赋值。
12.Uncaught TypeError: Converting circular structure toJSON
该错误总是发生在使用 JSON.stringify 序列化一个存在循环引用的对象时,移除将要被转换为 JSON 字符串对象内部的循环引用。
13.Unexpected token ;
通常发生在缺少括号或分号时,该错误提示的行号有时并不能指向正确的位置
14.Uncaught SyntaxError: Unexpected token ILLEGAL
字符串字面量缺少闭合的引号,确保所有字符串都包含闭合的引号。
JS常见的报错类型的更多相关文章
- vue.js常见的报错信息及其解决方法的记录
1.Vue packages version mismatch 翻译:vue包版本匹配错误 报错样例: 报错原因:通常出现于一些依赖库的更新或者安装新的依赖库之后(可以认为npm update已经成为 ...
- console报错类型
常见 console报错 Error 错误 EvalError 全局错误 RangeError 引用(范围)错误 ReferenceError 参数(参考)错误 SyntaxError 语法错误 ty ...
- python中常见的报错信息
python中常见的报错信息 在运行程序时常会遇到报错提示,报错的信息会提示是哪个方向错的,从而帮助你定位问题: 搜集了一些python最重要的内建异常类名: AttributeError:属性错误, ...
- Python中常见的报错名称
Python中常见的报错名称 1.SyntaxError 语法错误.看看是否用Python关键字命名变量,有没有使用中文符号,运算符.逻辑运算符等符号是不是使用不规范. 2.IndentationEr ...
- js执行函数报错Cannot set property 'value' of null怎么解决?
js执行函数报错Cannot set property 'value' of null 的解决方案: 原因:dom还没有完全加载 第一步:所以js建议放在body下面执行, 第二步:window.on ...
- SQL 关联外键报错类型不匹配
如题,关联外键的时候,报错类型匹配.但是两个 类型都是int sql 如下: CREATE TABLE IF NOT EXISTS `alert_receiver_map` ( `id` INT UN ...
- 擦他丫的,今天在Django项目中引用静态文件jQuery.js 就是引入报错,终于找到原因了!
擦 ,今天在Django项目中引用静态文件jQuery.js 就是引入报错,终于找到原因了! 问题在于我使用的谷歌浏览器,默认使用了缓存,导致每次访问同一个url时,都返回的是缓存里面的东西.通过谷歌 ...
- linux运维常见英文报错中文翻译(菜鸟必知)
linux常见英文报错中文翻译(菜鸟必知) 1.command not found 命令没有找到 2.No such file or directory 没有这个文件或目录 3.Permissio ...
- Linux常见英文报错中文翻译(菜鸟必知)
Linux常见英文报错中文翻译(菜鸟必知) 1.command not found 命令没有找到 2.No such file or directory 没有这个文件或目录 3.Permission ...
随机推荐
- spring接收文件资源
提交请求的contentType为multipart/form-data 图片提交在form中的名称为file 后端接收示例 @RequestMapping("/picture") ...
- Vue2.0源码思维导图-------------Vue 构造函数、原型、静态属性和方法
已经用vue有一段时间了,最近花一些时间去阅读Vue源码,看源码的同时便于理解,会用工具画下结构图. 今天把最近看到总结的结构图分享出来.希望可以帮助和其他同学一起进步.当然里边可能存在一些疏漏的,或 ...
- python的代码块缓存机制,小数据池机制。
同一代码块的缓存机制 在python中一个模块,一个函数,一个类,一个文件等都是一个代码块. 机制内容:Python在执行同一个代码块的初始化对象的命令时,会检查是否其值是否已经存在,如果存在,会将其 ...
- js-原生js触发器使用
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- php开发面试题---php高级程序员需要掌握的一些知识
php开发面试题---php高级程序员需要掌握的一些知识 一.总结 一句话总结: 还是需要多多接触架构师的知识,比如这里说的微服务,还有需要php服务端的知识来解决web端的不足,比如Swoole 1 ...
- linux进阶之路(三):vi/vim编辑器
所有Linux都会内置vi,vim是vi的增强版本,被誉为"编辑之神",玩转vim可以让你完全脱离鼠标. vim可以分为两种模式: 普通模式:使用vim 文件名,进入普通模式.普通 ...
- 3. Python基础语法
注释 我们在文言文中经常会看到注释,注释可以帮助读者对文章的理解.代码中的注释也是一样,优秀的代码注释可以帮助读者对代码的理解.当然在代码编写过程中,注释的使用不一定只是描述一段代码,也可能的是对代码 ...
- 【Java多线程系列一】Java实现线程方法
Java实现线程的两种方法 继承Thread类 实现Runnable接口 它们之间的区别如下: Java的类为单继承,但可以实现多个接口,因此Runnable可能在某些场景比Thread更适用 Thr ...
- 10 个轻松学会 CSS3 的优秀在线资源
本文包揽 CSS 的所有关键点,并且引入了最新的 CSS3 版本.这个先进的技术提供超级多的新标签和属性,使得 Web 设计构建创新更简单,帮助开发者创建具有新趋势,带有漂亮布局的 Web 页面.随着 ...
- kafka相关业务必会操作命令整理
参考:https://kafka.apache.org 服务相关命令 1.启动/停止zk > bin/zookeeper-server-start.sh config/zookeeper.pro ...