首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

一文详聊前端异常原理

RHS 查询与简单地查找某个变量值别无二致,而 LHS 查询则是试图找到变量容器本身,即作用域。 LHS 和 RHS 含义是 “赋值操作左侧或右侧” 并不一定意味着就是 “=”。...TypeError TypeError 在对值进行不合理操作时会发生,比如试图对一个非函数类型值进行函数调用,或者引用 null 或 undefined 类型属性,那么引擎会抛出这种类型异常...RangeError 范围错误,比如: new Array(-20) 会导致 RangeError: Invalid array length 递归等消耗内存程序会导致 RangeError: Maximum...每个错误都有 ID,比如 ID:185 错误是:在 componentDidUpdate 函数调用了 this.setState() 方法,导致 componentDidUpdate 陷入死循环。...断言 上文提到可预测,很容易联想到 Node 断言 assert,如果表达式不符合预期,就抛出一个错误

1.4K40
您找到你想要的搜索结果了吗?
是的
没有找到

急速 debug 实战一(浏览器-基础篇)

事件侦听器 在触发 click 等事件后运行代码。 异常 在引发已捕获捕获异常代码行。 函数 任何时候调用特定函数时。 代码行断点 在知道需要调查的确切代码区域时,可以使用代码行断点。...DevTools 始终会在执行代码行之前暂停。 在 DevTools 设置代码行断点: 点击 Sources 标签。 打开包含您想要中断代码行文件。 转至代码行。 代码行左侧是行号列。...代码代码行断点 在代码调用 debugger 可在该行暂停。 操作相当于使用代码行断点,只是断点是在代码设置,而不是在 DevTools 界面设置。...例如,在您发现您页面请求错误网址,并且您想要快速找到导致错误请求 AJAX 或 Fetch 源代码时,这类断点很有用。 若要设置 XHR 断点: 点击 Sources 标签。...异常断点 如果想要在引发已捕获捕获异常代码行暂停,可以使用异常断点。 点击 Sources 标签。 点击 Pause on exceptions 启用后,按钮变为蓝色。

3.3K10

python基础学习15----异常处理

导致你以为正在访问它 ValueError 传入一个调用者不期望值,即使值类型是正确 其他异常: Exception可以捕获任意异常 BaseException 所有异常基类 SystemExit...OSError 操作系统错误 WindowsError 系统调用失败 ImportError 导入模块/对象失败 LookupError 无效数据查询基类 IndexError...(没有属性) UnboundLocalError 访问初始化本地变量 ReferenceError 弱引用(Weak reference)试图访问已经垃圾回收了对象 RuntimeError...Tab 和空格混用 SystemError 一般解释器系统错误 TypeError 对类型无效操作 ValueError 传入无效参数 UnicodeError Unicode...catch 也可以在代码添加多个except语句来捕获不同种类型异常,执行相应不同操作 3.主动抛出异常 异常抛出可以手动添加 try: raise Exception("我自己抛")

1.6K10

在 Chrome DevTools 调试 JavaScript

点击页面num1+num2按钮。此时页面如下图: ? 这是因为我装浏览器插件导致定位不准,最好在无痕模式进行操作。...网址包含字符串模式时 事件侦听器 在触发 click 等事件后运行代码 异常 在引发已捕获捕获异常代码行 函数 任何时候调用特定函数时 1....debugger 在代码调用 debugger 可在该行暂停。 操作相当于使用代码行断点,只是断点是在代码设置,而不是在 DevTools 界面设置。...例如,在您发现您页面请求错误网址,并且您想要快速找到导致错误请求 AJAX 或 Fetch 源代码时,这类断点很有用。 若要设置 XHR 断点: 点击 Sources 标签。...启用后,按钮变为蓝色。 (可选)如果除捕获异常以外,还想在引发已捕获异常时暂停,则勾选 Pause On Caught Exceptions 复选框。 ? 7.

4.9K20

异常1.异常简介2.捕获异常3.异常传递4.抛出自定义异常5.异常处理抛出异常

这样文件或目录) 异常: 当Python检测到一个错误时,解释器就无法继续执行了,反而出现了一些错误提示,这就是所谓"异常" 2.捕获异常 1.捕获异常try...except... ?...说明: ·程序看不到任何错误,因为用except捕获到了IOError异常,并添加了处理方法 ·pass表示实现了相应实现,但什么也不做;如果把pass改为print语句,那么就会输出其他信息...解释器不是致命) NameError                       未声明/初始化对象 (没有属性) UnboundLocalError           访问初始化本地变量 ReferenceError...对类型无效操作 ValueError                         传入无效参数 UnicodeErrorUnicode           相关错误 UnicodeDecodeErrorUnicode...5.捕获所有异常 ? ? 6.else 在if,它作用是当条件不满足时执行实行;同样在try...except...也是如此,即如果没有捕获到异常,那么就执行else事情 ?

1.8K30

try..catch 不能捕获错误有哪些?注意事项又有哪些?

我们还会讲一下 JS 内置错误对象(Error, SyntaxError, ReferenceError等)以及如何定义自定义错误。...try..catch 无法捕获无效 JS 代码,例如try块以下代码在语法上是错误,但它不会被catch块捕获。...noSuchVariable; // undefined variable }, 1000); } catch (err) { console.log("这里不会被执行"); } 捕获...,也会执行finally块 如果没有catch块,错误将不能被优雅地处理,从而导致捕获错误 1.4 try..catch..finally 建议使用try...catch块和可选finally块。...JS 内置错误 3.1 Error JavaScript 有内置错误对象,它通常由try块抛出,并在catch块捕获,Error 对象包含以下属性: name:是错误名称,例如 “Error”

2.5K20

JavaScript 可选链(optional chaining)

使用逻辑与操作符可以确保表达式所有部分都能够正确执行,但写法却比较笨重。...这样,由于其他原因导致 user 对象为 undefined 情况才能被快速发现。 位于 ?. 前变量必须被显示声明,如果 user 这个变量根本没有被声明,那么 user?....anything 将会触发一个错误: // ReferenceError: user is not defined user?....address; 此处必须有变量声明语句 let/const/var, 可选链对未声明变量无效 三、其它用法 1、短路 上面说到,在可选链 ?....左侧值是否为 null 或 undefine,如果不是的话则继续执行。 注意:应该仅在 ?. 左侧值可能不存在情况下才使用,这样发生错误时才能更容易地找到问题。

1.2K20

python中常见一些错误异常类型

try/except语句用来检测try语句块错误,从而让except语句捕获异常信息并处理。如果你不想在异常发生时结束你程序,只需在try里捕获它。...IOError输入/输出操作失败OSError操作系统错误WindowsError系统调用失败ImportError导入模块/对象失败LookupError无效数据查询基类IndexError序列没有此索引...访问初始化本地变量ReferenceError弱引用(Weak reference)试图访问已经垃圾回收了对象RuntimeError一般运行时错误NotImplementedError尚未实现方法...SyntaxErrorPython 语法错误IndentationError缩进错误TabErrorTab 和空格混用SystemError一般解释器系统错误TypeError对类型无效操作ValueError...传入无效参数UnicodeErrorUnicode 相关错误UnicodeDecodeErrorUnicode 解码时错误UnicodeEncodeErrorUnicode 编码时错误UnicodeTranslateErrorUnicode

2.3K20

python异常报错详解

OSError 操作系统错误 WindowsError 系统调用失败 ImportError 导入模块/对象失败 LookupError 无效数据查询基类 IndexError 序列没有此索引(index...访问初始化本地变量 ReferenceError 弱引用(Weak reference)试图访问已经垃圾回收了对象 RuntimeError 一般运行时错误 NotImplementedError...对类型无效操作 ValueError 传入无效参数 UnicodeError Unicode 相关错误 UnicodeDecodeError Unicode 解码时错误 UnicodeEncodeError...当内置函数input()或raw_input()正在等待输入时,键入中断也会引发异常。异常继承 BaseException而不被意外地捕获Exception并因此阻止解释器退出代码被捕获 。...唯一例外来自继承BaseException,而不是StandardError 或Exception使得它不会意外地被映入代码捕获 Exception。这允许异常正常传播并导致解释器退出。

4.6K20

Selenium异常集锦

Selenium异常分类 Selenium异常分为两大类:已检查异常和检查异常。这些异常根据捕获异常时间(即编译时或运行时)进行分类。...与浏览器自动测试相关场景,经常会遇到未经检查异常,因为这些测试涉及浏览器和操作系统不同组合和版本,包括网络和异步加载等因素都会导致检查异常发生。...RemoteDriverServerException 当浏览器功能错误组合/字段导致服务器不发送响应时,将引发异常。...InvalidElementStateException 当命令无法完成时会抛出此Selenium异常,因为该元素处于无效状态或启用该元素来执行该操作。...如果用于查找Web元素选择器返回WebElement,则抛出InvalidSelectorException。 当XPath表达式是选择器并且XPath无效时,通常会发生这种情况。

5.3K20

三、python学习笔记-异常处理-异常

当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行。...断言语句失败 AttributeError 对象没有这个属性 EOFError 没有内建输入,到达EOF 标记 EnvironmentError 操作系统错误基类 IOError 输入/输出操作失败...OSError 操作系统错误 WindowsError 系统调用失败 ImportError 导入模块/对象失败 LookupError 无效数据查询基类 IndexError 序列没有此索引(index...访问初始化本地变量 ReferenceError 弱引用(Weak reference)试图访问已经垃圾回收了对象 RuntimeError 一般运行时错误 NotImplementedError...对类型无效操作 ValueError 传入无效参数 UnicodeError Unicode 相关错误 UnicodeDecodeError Unicode 解码时错误 UnicodeEncodeError

73450

Python异常处理小结

这两句话就是当发生异常是输出提示信息,而能输出这样信息前提是,系统判断出了你输入用户名或者密码是错误。在Python,“系统判断”这个行为被称为异常捕获(好像猎人捕获了猎物…)。...输出信息就是捕获异常之后输出用来指出发生了什么样错误。下面把Python捕获异常六种方法总结一下。 1....IOError 输入/输出操作失败 OSError 操作系统错误 WindowsError 系统调用失败 ImportError 导入模块/对象失败 LookupError 无效数据查询基类...未声明/初始化对象 (没有属性) UnboundLocalError 访问初始化本地变量 ReferenceError 弱引用(Weakreference)试图访问已经垃圾回收了对象...TabError Tab 和空格混用 SystemError 一般解释器系统错误 TypeError 对类型无效操作 ValueError 传入无效参数 UnicodeError

1.2K70

Python3 常见错误和异常处理

所有数值计算错误基类 \ FloatingPointError 浮点计算错误 这个错误导致错误浮点操作产生,前提是已经打开了浮点异常控制(fpectl),启用fpectl时,要求编译解释器提供...一个操作系统级别函数返回错误时会产生OSError WindowsError 系统调用失败 \ ImportError 导入模块/对象失败 无法导入一个模块或者模块一个成员时会产生该异常 LookupError...,而当前作用域中不存在这个名字,会产生 UnboundLocalError 访问初始化本地变量 一种NameError,特别针对局部变量名 ReferenceError 弱引用(Weak reference...如果错误发生在解释器本身,会产生 TypeError 对类型无效操作 使用+拼接时候 必须使用字符串,或者将数字转化成字符串 ValueError 传入无效参数 如果一个函数接收到值类型正确,但是值不合法时产生...运行检测到错误被称为异常。 捕捉异常可以使用try/except语句。 try/except语句用来检测try语句块错误,从而让except语句捕获异常信息并处理。

1.5K20

Datawhale组队学习 -- Task 3: Python异常类型总结和捕获语句

EOFError:没有内建输入,到达EOF标记 EnvironmentError:操作系统异常基类 IOError:输入/输出操作失败 OSError:操作系统产生异常(例如打开一个不存在文件)...:访问初始化本地变量 ReferenceError:弱引用试图访问已经垃圾回收了对象 RuntimeError:一般运行时异常 NotImplementedError:尚未实现方法 SyntaxError...:语法错误导致异常 IndentationError:缩进错误导致异常 TabError:Tab和空格混用 SystemError:一般解释器系统异常 TypeError:不同类型间无效操作 ValueError...:传入无效参数 UnicodeError:Unicode相关异常 UnicodeDecodeError:Unicode解码时异常 UnicodeEncodeError:Unicode编码错误导致异常...UnicodeTranslateError:Unicode转换错误导致异常 异常体系内部有层次关系,Python异常体系部分关系如下所示: ---- 2.

85440
领券