JS错误信息类型
1.SyntaxError 语法错误
①变量名不规范
// 变量名不规范
var 1 = 1;
未被捕获的语法错误,这个错误是js机制自动抛出来的 意外的数字

// 下面两个是同一种情况
var 1a = 1;
function 1test(){}
无效或意外的标记

// 关键字赋值
new = 5;
意外的标记 =

下面最后加了冒号
// 基本的语法错误
var a = 5:
意外的标记 :

2.ReferenceError 引用错误
// 变量或者函数未被声明
test()
test没有被定义

// 给无法被赋值的对象赋值的时候
var a = 1 = 2
var a = 2;
console.log(a) = 3
无效的左侧赋值

3.RangeError 范围错误
// 数组长度为负数时
var arr = [1,2,3]
arr.length = -2
无效的数组长度

// 对象方法参数超出可行范围
var num = new Number(66.66);
console.log(num.toFixed(-1));
数字参数参数必须在0到100

4.TypeError 类型错误
// 调用不存在的方法
123()
123不管有没有定义 它都不是一个方法 根本就没有判断定义了没有,先判断类型,是不是属于一个function,如果是一个function 后面就可以跟括号

var obj = {};
obj.say();
并没有在obj里找到say这个方法,这个时候就会报这个错误 因为 点 后跟的是属性名但是带了括号,属性不可能像方法一样执行, 所以要看是不是方法,如果say不带括号就不会报错,不带括号时会认为是个属性但没有赋值

// 实例化原始值的问题
var a = new 'string';
new后面必须要是一个构造器 ,new一个原始值会报错 new后要跟函数 不管是构造函数还是普通函数,只要new函数 就会有实例化 'string' 不是函数就会报错

var a = new 123;
这个和上面情况一样,不是构造函数

5.URIError URI错误
let str = "测试字符";
let encodeStr = encodeURI(str);
console.log(encodeStr); // %E6%B5%8B%E8%AF%95%E5%AD%97%E7%AC%A6
let decodeStr = decodeURI(encodeStr);
console.log(decodeStr); // 测试字符
let str = "%ef%erffv";
console.log(decodeURI(str));

URI不符合常规的
6.EvalError eval函数执行错误
eval("var a = 1;console.log(a)")

var obj = {
a:1,
b:2
}
console.log(eval("obj"));
打印的不是字符串obj,而是一个对象 换成 console.log(eval(obj)) 也是一样的

这六种错误都可以人为的抛出
var error = new Error("代码错误了")
console.log(error);

new SyntaxError("代码错误")
JS错误信息类型的更多相关文章
- Chrome浏览器console控制台不打印任何js错误信息
手欠在Chrome控制台在错误信息,右键:Hide messages from vue 看不到 报错信息 这里删除成 默认的Filter 报错就出现了
- flex 错误信息类型及解决方法
总结一些经常出现的异常信息及处理方法(会一直持续更新): 异常1: 写actionscript3.0时遇到了错误.报错为:Error #2044: 未处理的 ioError:. text=Error ...
- 搭建前端监控系统(二)JS错误监控篇
===================================================================== 前端性能监控系统: DEMO地址 GIT代码仓库地址 ...
- Webfunny知识分享:JS错误监控
现在的前端开发已不再是刀耕火种的年代了,各种框架.编译工具层出不穷,前端监控系统也不甘其后,遍地开花. 前端正承受着越来越重的职责,前端的业务也变得越来越复杂,此时此刻我们就更需要一套完善的监控系统来 ...
- 去除jquery.min.map 404错误信息
调试中出现了 jquery.min.map 404 (Not Found) 的js错误信息: 那么jquery.min.map到底是个什么呢? JQuery 官方解释 从 jQuery 1.9.0 版 ...
- 编译器错误信息: CS0433: 类型“ASP.usercontrols_total_ascx”同时存在
“/”应用程序中的服务器错误. 编译错误 说明: 在编译向该请求提供服务所需资源的过程中出现错误.请检查下列特定错误详细信息并适当地修改源代码. 编译器错误信息: CS0433: 类型“ASP.use ...
- jQuery Validate 表单验证插件----利用jquery.metadata.js将校验规则直接写在class属性里面并定义错误信息的提示
一.下载依赖包 网盘下载:https://yunpan.cn/cryvgGGAQ3DSW 访问密码 f224 二. 添加一个另外一个插件jquery.metadata.js 并把校验规则写在控件里面 ...
- js收集错误信息,错误上报
线上的代码可有有时候用户会反应不好使,一般是因为js造成的! 尤其在移动端各个手机之前的差异特别大. 下面这段代码是获取能帮助你! <script> window.onerror = fu ...
- ThinkPHP第八天(U函数放置在外部JS不会被解析,错误界面定制,错误信息变量)
1.JS外部文件中U函数不会被解析,内部JS代码可以被解析. 2.halt. _404可以定制错误模板,在配置文件中配置 TMPL_EXCEPTION_FILE =>'./Public/Tpl/ ...
随机推荐
- Linux (Ubuntu)安装ssh
看ssh服务是否启动 打开"终端窗口",输入sudo ps -e |grep ssh 回车有sshd,说明ssh服务已经启动, 如果没有启动,输入sudo service ssh ...
- LeetCode_26. Remove Duplicates from Sorted Array
26. Remove Duplicates from Sorted Array Easy Given a sorted array nums, remove the duplicates in-pla ...
- python配置yum源
import subprocess import sys import os def main(): try: subprocess.call(["yum install wget -y;c ...
- laravel php门面模式
门面模式 理解3个概念: 1)Container的概念,laravel所有的服务都注册在container里面,至于如何注册,就是使用service provider 2)service pr ...
- Moq中判断方法是否被执行时,参数中有列表的情况
如果参数中有列表,列表项为引用类型时,则会判断列表项是否为同一引用 列表本身不判断
- 人工神经网络反向传播算法(BP算法)证明推导
为了搞明白这个没少在网上搜,但是结果不尽人意,最后找到了一篇很好很详细的证明过程,摘抄整理为 latex 如下. (原文:https://blog.csdn.net/weixin_41718085/a ...
- Asp.Net Core文件上传
文件上传功能在实际开发中经常使用,在 .Net Core中,文件上传接收类型不再使用 HttpPostedFile 或 HttpFileCollection来接收,而是使用 IFormFile 或 I ...
- Python练手项目:20行爬取全王者全英雄皮肤
引言 王者荣耀大家都玩过吧,没玩过的也应该听说过,作为时下最火的手机MOBA游戏,咳咳,好像跑题了.我们今天的重点是爬取王者荣耀所有英雄的所有皮肤,而且仅仅使用20行Python代码即可完成. ...
- 7个步骤让PC网站自动适配手机网页
传统的网站如何完成向移动设备的快速转型? 通过移动适配技术可以实现,切图网是国内首家基于web技术服务的公司,而移动适配主要通过底层的web技术开发手段来完成,下面切图网将从技术角度来告诉你通过7个步 ...
- Postman和jmeter的区别
1.创建接口用例集(没区别) Postman是Collections,Jmeter是线程组,没什么区别. 2.步骤的实现(有区别) Postman和jmeter都是创建http请求 区别1:postm ...