美文网首页
11、错误类型

11、错误类型

作者: 懒羊羊3号 | 来源:发表于2019-06-17 16:28 被阅读0次
  • SyntaxError对象是解析代码时发生的语法错误。比如说变量名错误,缺少括号
  • ReferenceError对象是引用一个不存在的变量时发生的错误
  • RangeError对象是一个值超出有效范围时发生的错误。主要有几种情况,一是数组长度为负数,二是Number对象的方法参数超出范围,以及函数堆栈超过最大值
  • TypeError对象是变量或参数不是预期类型时发生的错误。比如,对字符串、布尔值、数值等原始类型的值使用new命令,就会抛出这种错误,因为new命令的参数应该是一个构造函数
  • URIError对象是 URI 相关函数的参数不正确时抛出的错误,主要涉及encodeURI()、decodeURI()、encodeURIComponent()、decodeURIComponent()、escape()和unescape()这六个函数。
  • EvalError,eval函数没有被正确执行时,会抛出EvalError错误。该错误类型已经不再使用了,只是为了保证与以前代码兼容,才继续保留。
var err1 = new Error('出错了!');
var err2 = new RangeError('出错了,变量超出有效范围!');
var err3 = new TypeError('出错了,变量类型无效!');

err1.message // "出错了!"
err2.message // "出错了,变量超出有效范围!"
err3.message // "出错了,变量类型无效!"

自定义错误

function UserError(message) {
  this.message = message || '默认信息';
  this.name = 'UserError';
}

UserError.prototype = new Error();
UserError.prototype.constructor = UserError;

throw

对于 JavaScript 引擎来说,遇到throw语句,程序就中止了。引擎会接收到throw抛出的信息,可能是一个错误实例,也可能是其他类型的值。finally一定会执行。

function f() {
  try {
    console.log(0);
    throw 'bug';
  } catch(e) {
    console.log(1);
    return true; // 这句原本会延迟到 finally 代码块结束再执行
    console.log(2); // 不会运行
  } finally {
    console.log(3);
    return false; // 这句会覆盖掉前面那句 return
    console.log(4); // 不会运行
  }

  console.log(5); // 不会运行
}

var result = f();
// 0
// 1
// 3

result
// false

参考地址:
http://javascript.ruanyifeng.com/grammar/error.html

相关文章

  • 11、错误类型

    SyntaxError对象是解析代码时发生的语法错误。比如说变量名错误,缺少括号 ReferenceError对象...

  • 十七.错误处理

    17.1 错误类型:Error 是基类型,其他错误类型都继承自该类型。  Error :基类型 EvalErr...

  • 错误类型

    错误类型 开发过程常见的错误 语法错误 (编译报错)逻辑错误运行时错误(可能导致闪退,一般也叫做异常).........

  • 错误处理与调试

    错误类型: 一共有7种错误类型: Error:基类,其它错误类型都继承自该类型。 EvalError:如果没将ev...

  • Python的错误处理try...except...finall

    捕获错误 错误有很多类型,可以有多个except捕获错误: Python的错误其实也是class,所有的错误类型都...

  • 读书笔记(04) - 错误监控 - JavaScript高级程序

    错误类型 即时运行错误 (代码错误) 资源加载错误 常见的错误 1. 类型转换错误 建议使用全等===操作符 2....

  • 智能合约(三、四)

    智能合约(三) 一、错误处理 Øassert 类型异常:内部错误 Ørequire 类型异常: 外部错误 Ørev...

  • 前端错误监控与上报

    错误类型 我们一般比较关心以下三种类型的错误 js执行错误 资源加载错误 http请求错误 全局捕获错误 wind...

  • VBA-ZT第6节|VBA编程技巧与常见错误

    最近更新:'2019-05-17' 1.错误类型2.Err对象判断错误类型3.加载项程序 1.错误类型 1.1案例...

  • go语言-error 简版记录

    go语言中错误分为error和panic error 1.错误变量 2.自定义错误类型 3.错误类型返回 pani...

网友评论

      本文标题:11、错误类型

      本文链接:https://www.haomeiwen.com/subject/ihnafctx.html