Loading lesson path
Concept visual
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:
Eval Error (deprecated) Silent Errors (next chapter)
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 {} catch(err
) {}A ReferenceError occurs if you use (reference) a variable that does not exist.
ReferenceError fname = foo;foo is not defined
ReferenceError let x = y;
let y = 5;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;
}A Type Error occurs when a value is of the wrong type or an operation is invalid on that type.
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;
}A RangeError occurs when a value is out of its valid range.
RangeError new Array(-1);RangeError num.toPrecision(500);
toPrecision() argument must be between 1 and 100