Top 10 JavaScript errors

javascript errors

https://rollbar.com/blog/tags/top-errors

https://rollbar.com/blog/top-10-javascript-errors/

  1. TypeError

  2. RangeError

  3. ReferenceError

  4. SyntaxError

  5. InternalError

  6. URIError

  7. Warning

  8. EvalError

JavaScript Errors

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Errors

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error

Uncaught TypeError: Cannot read property '...' of undefined

var foo;

foo.getName();
// Uncaught TypeError: Cannot read property 'getName' of undefined foo.name;
// Uncaught TypeError: Cannot read property 'name' of undefined

Uncaught TypeError: Cannot read property 'length' of null

var obj = null;

obj.length;
// Uncaught TypeError: Cannot read property '...' of null undefined == null;
//true
undefined === null;
//false

CORS script error

// .htaccess
// Access-Control-Allow-Origin // crossorigin="anonymous"

Uncaught TypeError: ... is not a function

var foo;

this.foo();
// Uncaught TypeError: this.foo is not a function foo();
// Uncaught TypeError: foo is not a function

this & context error

The reason is that the anonymous function being executed is in the context of the document, whereas clearBoard is defined on the window.


function clearBoard(){
alert("Cleared");
} document.addEventListener("click", function(){
console.log(`this`, this);
// this === #document
this.clearBoard();
}); window.addEventListener("click", function(){
console.log(`this`, this);
// this === Window
this.clearBoard();
});

bind

var that = this;
var self = this;
// save reference to 'this', while it's still this! document.addEventListener("click", function(){
self.clearBoard();
// that.clearBoard();
}); / /Alternatively, in the newer browsers, you can use the bind() method to pass the proper reference: document.addEventListener("click", this.clearBoard.bind(this));

Uncaught RangeError

Number.toExponential(digits) accept digits from 0 to 100

Number.toFixed(digits) accept digits from 0 to 100

Number.toPrecision(digits) accepts digits from 1 to 100.

new Array(-1);
// Uncaught RangeError: Invalid array length var num = 2; num.toExponential(-2);
// Uncaught RangeError: toExponential() argument must be between 0 and 100 at Number.toExponential // num.toFixed(101);
// Uncaught RangeError: toFixed() digits argument must be between 0 and 100 at Number.toFixed num.toPrecision(0);
// Uncaught RangeError: toPrecision() argument must be between 1 and 100 at Number.toPrecision

Number


Number.MAX_VALUE;
// 1.7976931348623157e+308 Number.MAX_VALUE + Number.MAX_VALUE;
// Infinity
Number.parseFloat(Infinity);
// Infinity Number.MIN_VALUE;
// 5e-324 Number.MAX_SAFE_INTEGER;
// 9007199254740991 Number.MIN_SAFE_INTEGER;
// -9007199254740991

function local params empty bug

function 形参,实参


var testArray= ["Test"]; function testFunction(testArray) {
for (var i = 0; i < testArray.length; i++) {
console.log(testArray[i]);
}
}
testFunction();

Uncaught TypeError: Cannot set property '...' of undefined


var foo; foo.name = foo;
// Uncaught TypeError: Cannot set property 'name' of undefined

Uncaught ReferenceError: ... is not defined


xyz;
// Uncaught ReferenceError: xyz is not defined

Errors on the world’s top 100 websites and how to avoid them

https://rollbar.com/blog/top-100-websites-errors/

HTTP error


TypeScript

  1. JavaScript that scales.
  2. TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.
  3. Any browser. Any host. Any OS. Open source.

https://www.typescriptlang.org/

refs

https://rollbar.com/error-tracking/javascript/



xgqfrms 2012-2020

www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!


Top 10 JavaScript errors的更多相关文章

  1. The Top 10 Javascript MVC Frameworks Reviewed

    Over the last several months I have been in a constant search for the perfect javascript MVC framewo ...

  2. Top 10 JavaScript编辑器,你在用哪个?

    对于JavaScript程序员来说,目前有很多很棒的工具可供选择.文本将会讨论10个优秀的支持JavaScript,HTML5和CSS开发,并且可以使用Markdown进行文档编写的文本编辑器.为什么 ...

  3. GitHub上最流行的Top 10 JavaScript项目

    统计出Github中所有项目的数量,几乎是不可能的,而明确指出哪些是最优秀的项目就更不可能了.如果说到JavaScript,曾经极富创新的项目(很可能)在一两个月后就会变得过时.落后.以防被淹没在大量 ...

  4. Top 10 Javascript MVC 框架

    在网上偶然看到了,几种MVC框架各有优缺点,但Backbone和Ember的呼声相对更高-大家参考一下哈- http://codebrief.com/2012/01/the-top-10-javasc ...

  5. OWASP Top 10 – 2013, 最新十大安全隐患(ASP.NET解决方法)

    OWASP(开放Web软体安全项目- Open Web Application Security Project)是一个开放社群.非营利性组织,目前全球有130个分会近万名会员,其主要目标是研议协助解 ...

  6. [转]Top 10 DTrace scripts for Mac OS X

    org link: http://dtrace.org/blogs/brendan/2011/10/10/top-10-dtrace-scripts-for-mac-os-x/ Top 10 DTra ...

  7. ASP.NET Core中的OWASP Top 10 十大风险-失效的访问控制与Session管理

    不定时更新翻译系列,此系列更新毫无时间规律,文笔菜翻译菜求各位看官老爷们轻喷,如觉得我翻译有问题请挪步原博客地址 本博文翻译自: https://dotnetcoretutorials.com/201 ...

  8. OWASP TOP 10 2017中文译文

    说明:owasp top 10其实有中文官方版本:本文是按着英文版进行翻译而成. 官方中文版:http://www.owasp.org.cn/owasp-project/OWASPTop102017v ...

  9. SQL Server: Top 10 Secrets of a SQL Server Expert

    转载自:http://technet.microsoft.com/en-us/magazine/gg299551.aspx Many companies have downsized their IT ...

随机推荐

  1. WPF mvvm 验证,耗时两天的解决方案

    常用类 类名 介绍 ValidationRule 所有自定义验证规则的基类.提供了让用户定义验证规则的入口. ExceptionValidation 表示一个规则,该规则检查在绑定源属性更新过程中引发 ...

  2. CF1190B

    扯在前面 我们老师刚讲过的题目,很考验思维,本蒟蒻WA了十发才过,然后看到题解里只是指出了特殊情况没多解释,可能有人看不懂,特来分享一下 首先题目就很有意思,思考的过程也很有趣,想把所有情况思考全思考 ...

  3. hadoop知识点总结(一)hadoop架构以及mapreduce工作机制

    1,为什么需要hadoop 数据分析者面临的问题 数据日趋庞大,读写都出现性能瓶颈: 用户的应用和分析结果,对实时性和响应时间要求越来越高: 使用的模型越来越复杂,计算量指数级上升. 期待的解决方案 ...

  4. IPSec 专题----转自华为文档

    参考链接:https://support.huawei.com/enterprise/zh/doc/EDOC1000122878?section=j004 IPSec 特性全景 1.介绍 由于IP报文 ...

  5. Cisco的互联网络操作系统IOS和安全设备管理器SDM__管理Cisco互联网络

    1.如果不能远程登录到一台设备上,可能是由于远程设备上没有设置口令.也可能是由于访问控制列表过滤了远程登录会话. show users:检查都有哪些设备连接到了此路由器. clear line #:清 ...

  6. 基于Java+Spring Boot开源项目JeeSite的Jenkins持续交互介绍

    一.实战项目介绍- JeeSite 基于Spring Boot 2.0 数据存储MySQL 语言:Java 规模大小:适中,适合初学者 源码地址:https://gitee.com/thinkgem/ ...

  7. Redis命令之setbit

    setbit的作用是,对key上存储的字符串,设置或清除指定偏移量上的位(bit). 语法如下: SETBIT key offset value key是要操作的对象的键. offset是操作对象上的 ...

  8. 翻译:《实用的Python编程》01_Introduction_00_Overview

    目录 | 下一节 (2 处理数据) 1. Python 简介 本章是第一章,将会从头开始介绍 Python 基础知识,让你从零开始,学会怎么编写.运行.调试一个简单的程序.最后,你可以运用这些 Pyt ...

  9. [ICPC 2018 宁夏邀请赛] A-Maximum Element In A Stack(思维)

    >传送门< 前言 辣鸡网络赛,虽然我是个菜鸡,然而好几个队伍十几分钟就AK???我心态那会彻底崩了,后来群里炸了,话题直接上知乎热搜,都是2018ICPC宁夏网络赛原题,这怎么玩,拼手速? ...

  10. 【洛谷 p3372】模板-线段树 1(数据结构--线段树)

    题目:已知一个数列,你需要进行下面两种操作:1.将某区间每一个数加上x:2.求出某区间每一个数的和. 解法:如题,模版题.需要加上 lazy 标记,也就是我的 upd.lazy 标记的思路就是对一个结 ...