javascript中error错误类型
javascript中error错误类型
javascript中error错误类型一、Error
基类型,其他错误类型都继承自该类型。因此,所有错误类型共享了一组相同的属性。Error类型的错误很少见,如果有也是浏览器抛出的;这个基类型的主要目的是供开发人员抛出自定义错误
二、EvalError (eval错误)
eval函数没有被正确执行时,会抛出EvalError错误。该错误类型已经不再在ES5中出现了,只是为了保证与以前代码兼容,才继续保留
三、RangeError (范围错误)
RangeError类型的错误会在一个值超出相应范围时触发,主要包括超出数组长度范围以及超出数字取值范围等,例如:数组长度为负数、Number对象的方法参数超出范围、函数堆栈超过最大值
new Array(-1);//Uncaught RangeError: Invalid array length
new Array(Number.MAX_VALUE);//Uncaught RangeError: Invalid array length
(1234).toExponential(21);//Uncaught RangeError: toExponential() argument must be between 0 and 20
(1234).toExponential(-1);////Uncaught RangeError: toExponential() argument must be between 0 and 20
四、ReferenceError (引用错误)
1、引用一个不存在的变量时,会触发ReferenceError(引用错误)
a;//Uncaught ReferenceError: a is not defined
1++;//Uncaught ReferenceError: Invalid left-hand side expression in postfix operation
2、另一种触发场景是,将一个值分配给无法分配的对象,比如对函数的运行结果或者this赋值。
console.log() = 1 // ReferenceError: Invalid left-hand side in assignment
this = 1 // ReferenceError: Invalid left-hand side in assignment
五、SyntaxError (语法错误)
当不符合语法规则时,会抛出SyntaxError(语法错误)
//变量名错误
var 1a;//Uncaught SyntaxError: Unexpected number
// 缺少括号
console.log 'hello');//Uncaught SyntaxError: Unexpected string
六、TypeError (类型错误)
1、在变量或参数不是预期类型时,或者在访问不存在的方法时 都会导致TypeError类型错误。
2、比如,对字符串、布尔值、数值等原始类型的值使用new命令,就会抛出这种错误,因为new命令的参数应该是一个构造函数。
var o = new 10;//Uncaught TypeError: 10 is not a constructor
var obj = {}; obj.unknownMethod() // TypeError: undefined is not a function
alert('name' in true);//Uncaught TypeError: Cannot use 'in' operator to search for 'name' in true
Function.prototype.toString.call('name');//Uncaught TypeError: Function.prototype.toString is not generic
七、URIError (URI错误)
URIError是URI相关函数的参数不正确时抛出的错误,主要涉及encodeURI()、decodeURI()、encodeURIComponent()、decodeURIComponent()、escape()和unescape()这六个函数。
decodeURI('%2');// URIError: URI malformed
- javascript 数组排序
- js 图片编辑处理库(javascript input图片上传及预览,FileReader预览图片)
- javascript中window对象
- JavaScript的执行上下文
- javascript里字符串描述(JavaScript字符串操作的四个实用技巧)
- javascript基础语法和用法(JavaScript中new操作符的原理示例详解)
- javascript中需要注意的几个细节
- js怎么做一个计时器(JavaScript实现简单计时器)
- javascript类型转换
- javascript的执行顺序
- javascript怎么判断对象类型(JavaScript对象内置对象,值类型和引用类型讲解)
- javascript中还原append代码(JS实现jQuery的append功能)
- javascript编程中的promise(JavaScript如何利用Promise控制并发请求个数)
- qt和js相互调用(QT与javascript交互数据的实现)
- javascript登录转注册界面(JavaScript实现登录窗体)
- javascript 函数生命周期(JavaScript sleep睡眠函数的使用)
- 阿里最新财报公布 三季度营收增长3 ,将增加150亿美元回购额度 在美股价小涨(阿里最新财报公布)
- 赵薇时胖时瘦 最近变美少女 原因在这里 躺着就变瘦(赵薇时胖时瘦最近变美)
- 学会这26种姿势,你就可以和兵哥哥切磋了(你就可以和兵哥哥切磋了)
- 吴彦祖陈冠希 恩怨 ,失去曾让他流泪的女友,终遇走过18年真爱(吴彦祖陈冠希恩怨)
- 痴情男神 吴彦祖 与妻子恋爱8年,结婚10年,家庭幸福美满(痴情男神吴彦祖)
- 成功破圈,小牛电动SQi强势开 跨(小牛电动SQi强势开)
热门推荐
- php密钥怎么加密(php校验公钥是否可用的实例方法)
- linux常见命令vmstat(Linux stat命令的使用)
- laravel连接多个数据库(laravel实现一个上传图片的接口,并建立软链接,访问图片的方法)
- C# Directory类的操作
- 微信js开发教程(微信JSSDK分享功能图文实例详解)
- cssdiv垂直居中怎么设置(CSS设置DIV垂直居中的N种方法 兼容IE浏览器)
- pythonpandas操作拆分excel(Python使用pandas和xlsxwriter读写xlsx文件的方法示例)
- sqlserver数据类型和长度(SqlServer 数据库 三大 范式)
- ecmascript编程语言(一篇文章弄懂ECMAScript中的操作符)
- 简述css盒子模型的认识(CSS3弹性盒模型开发笔记一)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9