JavaScript Errors
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:
- Syntax Errors
- Reference Errors
- Type Errors
- Range Errors
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
}
Syntax Errors
Syntax Errors occur when the code violates JavaScript's grammar rules.
Error | Example | Error |
---|---|---|
Unexpected token | fname = "John); | Invalid or unexpected token ) |
SyntaxError | Math.round(4.6; | Missing ) after argument list |
Example
In this example we have made the mistake of not closing the string:
let fName = "John);
Try it Yourself »
The statement above will generate the error: Invalid or unexpected token
Execution of the program will stop!
Reference Errors
Reference Errors are triggered when referring a variable or aa function that does not exist.
Error | Example | Error |
---|---|---|
ReferenceError | fname = foo; | foo is not defined |
Cannot access before initialization | let x = y; let y = 5; |
Cannot access y before initialization |
Type Errors
Type Errors occur when a value is of the wrong type or an operation is invalid on that type.
Error | Example | Error |
---|---|---|
TypeError | anna(); | anna is not a function |
Cannot read property of undefined/null | let x = 5; let y = x.length |
Cannot read properties of undefined (reading 'lenght') |
Range Errors
Type Errors occur when a numeric or iterable value is out of its valid range.
Error | Example | Error |
---|---|---|
RangeError | new Array(-1); | Invalid array length |
Error | Example | Error |
RangeError | new Date("2025-02-33"); | Invalid date |