bugl
bugl
HomeLearnPatternsSearch
HomeLearnPatternsSearch

Loading lesson path

Learn/JavaScript/Debugging, Projects, and Reference
JavaScript•Debugging, Projects, and Reference

JavaScript Errors

Concept visual

JavaScript Errors

Pointer walk
two pointers
leftright102132436485116
left=0
right=6
1
3

Start at both ends

Errors Will Happen! When executing JavaScript code, different errors can occur. Errors can be coding errors made by the programmer, errors due to wrong input, and other unforeseeable things:

Reference Errors

Type Errors

Range Errors

URI Errors

Syntax Errors

Eval Error (deprecated) Silent Errors (next chapter)

How to Handle JavaScript Errors

The try statement allows you to define a block of code to be tested for errors while it is being executed. The catch statement allows you to define a block of code to be executed, if an error occurs in the try block. The JavaScript statements try and catch come in pairs:

try {

Block of code to try

} catch(

err

) {

Block of code to handle errors

}

Reference Errors

A ReferenceError occurs if you use (reference) a variable that does not exist.

Error Type

Example

Error

ReferenceError fname = foo;

foo is not defined

ReferenceError let x = y;
let y = 5;

Cannot access y before initialization

Examples

Formula

You cannot use a non - existing variable:
let x = 5;
try {
x = y + 1;
} catch(err) {
let text = err.name;
}

Cannot access a variable before initialization:

try {
let x = y;
let y = 5;
} catch(err) {
let text = err.name;
}

JavaScript Type Errors

A Type Error occurs when a value is of the wrong type or an operation is invalid on that type.

Error

Example

Error Message

TypeError anna(5);

anna is not a function

Type Error let num = 1;
num.toUpperCase();

num.toUpperCase is not a function

Examples anna() is not a function:

let anna = 5;
try {
anna(5);
} catch(err) {
let text = err.name;
}

You cannot convert a number to upper case:

let num = 1;
try {
num.toUpperCase();
} catch(err) {
let text = err.name;
}

JavaScript Range Errors

A RangeError occurs when a value is out of its valid range.

Error Type

Example

Error Message

RangeError new Array(-1);

Invalid array length

RangeError num.toPrecision(500);
toPrecision() argument must be between 1 and 100

Next

JavaScript Debugging