JavaScript program error types are divided into: 1. Error; 2. EvalError; 3. RangeError; 4. ReferenceError (reference error); 5. SyntaxError (syntax error); 6. TypeError; 7. URIError.
The operating environment of this tutorial: windows7 system, javascript version 1.8.5, Dell G3 computer.
Error types in JavaScript
ECMA-262 defines 7 error types:
Error
EvalError
- ##RangeError
- ReferenceError
- SyntaxError
1. SyntaxError (syntax error): 1.1 The variable name does not comply with the specification
var 1 // Uncaught SyntaxError: Unexpected number var 1a // Uncaught SyntaxError: Invalid or unexpected token
function = 5 // Uncaught SyntaxError: Unexpected token =
2. Uncaught ReferenceError: refers to a reference that does not exist The error occurred when using the variable. Assign a value to an object that cannot be assigned, such as the result of a function or Function assignment.
2.1 Reference to a non-existent variable
a(); // Uncaught ReferenceError: a is not defined console.log(b); // Uncaught ReferenceError: b is not defined
console.log("abc") = 1 // Uncaught ReferenceError: Invalid left-hand side in assignment
3. RangeError (Range Error): RangeError is an error that occurs when a valid range is exceeded. There are several main situations. The first is that the array length is a negative number. The second is that the method parameters of the Number object are out of range, and the function stack exceeds the maximum size.
3.1 The array length is a negative number
[].length = -5; // Uncaught RangeError: Invalid array length
var num = new Number(12.34); console.log(num.toFixed(-1)); // Uncaught RangeError: toFixed() digits argument must be between 0 and 20 at Number.toFixed // 说明: toFixed方法的作用是将数字四舍五入为指定小数位数的数字,参数是小数点后的位数,范围为0 -20.
4. TypeError: An error that occurs when a variable or parameter is not of the expected type. For example, using new string, Boolean and other primitive types and the calling object does not exist method will throw this error because the parameter of the new command should be a constructor.
4.1 Calling a non-existent method
123(); // Uncaught TypeError: 123 is not a function var o = {}; o.run(); // Uncaught TypeError: o.run is not a function
var p = new 456(); // Uncaught TypeError: 456 is not a constructor
5. URIError (URL error): The main reason is that the parameters of the related functions are incorrect.
decodeURI("%"); // Uncaught URIError: URI malformed at decodeURI
6. EvalError eval() (function execution error): In JavaScript below ES5, when eval() When a function is not executed correctly, an evalError is thrown. For example The following situation:
var myEval = eval; myEval("alert('call eval')"); 需要注意的是:ES5以上的JavaScript中已经不再抛出该错误,但依然可以通过new关键字来自定义该类型 的错误提示。
new Error("出错了!"); new RangeError("出错了,变量超出有效范围!"); new TypeError("出错了,变量类型无效!");
Be familiar with these basic error types and you can quickly locate and solve the problem when an error occurs. [Recommended learning:
javascript advanced tutorialThe above is the detailed content of What are the types of JavaScript program errors?. For more information, please follow other related articles on the PHP Chinese website!

No,youshouldn'tusemultipleIDsinthesameDOM.1)IDsmustbeuniqueperHTMLspecification,andusingduplicatescancauseinconsistentbrowserbehavior.2)Useclassesforstylingmultipleelements,attributeselectorsfortargetingbyattributes,anddescendantselectorsforstructure

HTML5aimstoenhancewebcapabilities,makingitmoredynamic,interactive,andaccessible.1)Itsupportsmultimediaelementslikeand,eliminatingtheneedforplugins.2)Semanticelementsimproveaccessibilityandcodereadability.3)Featureslikeenablepowerful,responsivewebappl

HTML5aimstoenhancewebdevelopmentanduserexperiencethroughsemanticstructure,multimediaintegration,andperformanceimprovements.1)Semanticelementslike,,,andimprovereadabilityandaccessibility.2)andtagsallowseamlessmultimediaembeddingwithoutplugins.3)Featur

HTML5isnotinherentlyinsecure,butitsfeaturescanleadtosecurityrisksifmisusedorimproperlyimplemented.1)Usethesandboxattributeiniframestocontrolembeddedcontentandpreventvulnerabilitieslikeclickjacking.2)AvoidstoringsensitivedatainWebStorageduetoitsaccess

HTML5aimedtoenhancewebdevelopmentbyintroducingsemanticelements,nativemultimediasupport,improvedformelements,andofflinecapabilities,contrastingwiththelimitationsofHTML4andXHTML.1)Itintroducedsemantictagslike,,,improvingstructureandSEO.2)Nativeaudioand

Using ID selectors is not inherently bad in CSS, but should be used with caution. 1) ID selector is suitable for unique elements or JavaScript hooks. 2) For general styles, class selectors should be used as they are more flexible and maintainable. By balancing the use of ID and class, a more robust and efficient CSS architecture can be implemented.

HTML5'sgoalsin2024focusonrefinementandoptimization,notnewfeatures.1)Enhanceperformanceandefficiencythroughoptimizedrendering.2)Improveaccessibilitywithrefinedattributesandelements.3)Addresssecurityconcerns,particularlyXSS,withwiderCSPadoption.4)Ensur

HTML5aimedtoimprovewebdevelopmentinfourkeyareas:1)Multimediasupport,2)Semanticstructure,3)Formcapabilities,and4)Offlineandstorageoptions.1)HTML5introducedandelements,simplifyingmediaembeddingandenhancinguserexperience.2)Newsemanticelementslikeandimpr


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 Linux new version
SublimeText3 Linux latest version

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Zend Studio 13.0.1
Powerful PHP integrated development environment

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft
