A try-catch block helps your program handle errors without stopping. It lets you try some code and catch problems if they happen.
Try–catch block in Javascript
try { // code that might cause an error } catch (error) { // code to handle the error }
The try block runs code that might fail.
The catch block runs only if there is an error in try.
catch is not used.try { let result = 10 / 0; console.log(result); } catch (error) { console.log('Error caught:', error.message); }
try { JSON.parse('bad json'); } catch (error) { console.log('Parsing failed:', error.message); }
This program tries to read a broken JSON string. The catch block runs because the JSON is invalid, and it shows a friendly message.
try { let userInput = '{"name": "Alice"'; // missing closing brace let user = JSON.parse(userInput); console.log('User name:', user.name); } catch (error) { console.log('Oops! Invalid JSON:', error.message); }
Only errors inside the try block are caught.
You can use error.message to get a simple description of the problem.
Try-catch blocks help keep your program running even if something goes wrong.
Use try to run code that might fail.
Use catch to handle errors and keep your program safe.
This makes your programs more friendly and reliable.
Practice
What is the main purpose of a try block in JavaScript?
Solution
Step 1: Understand the role of
Thetrytryblock is used to run code that might throw an error during execution.Step 2: Differentiate from other code blocks
Other options like declaring variables, loops, or functions are unrelated to error handling.Final Answer:
To run code that might cause an error -> Option AQuick Check:
tryruns risky code [OK]
- Thinking try declares variables
- Confusing try with loops
- Assuming try defines functions
Which of the following is the correct syntax to start a try-catch block in JavaScript?
?
Solution
Step 1: Recall correct try-catch syntax
The correct syntax uses curly braces and parentheses for catch:try { ... } catch (error) { ... }.Step 2: Identify syntax errors in other options
Options B, C, and D misuse colons, parentheses, or omit parentheses around the error parameter.Final Answer:
try { /* code */ } catch (error) { /* handle error */ } -> Option BQuick Check:
Curly braces and catch(error) needed [OK]
- Using colons instead of braces
- Omitting parentheses in catch
- Using parentheses after try
What will be the output of the following code?
try {
console.log('Start');
throw new Error('Oops');
console.log('End');
} catch (e) {
console.log('Caught:', e.message);
}Solution
Step 1: Trace code inside try block
The first console logs 'Start'. Then an error is thrown, so the next console.log('End') is skipped.Step 2: Catch block runs after error
The catch block catches the error and logs 'Caught: Oops'.Final Answer:
Start\nCaught: Oops -> Option DQuick Check:
Error stops try, catch logs message [OK]
- Thinking code after throw runs
- Ignoring catch block output
- Confusing error message with error object
Find the error in this code snippet:
try {
console.log('Hello');
} catch e {
console.log('Error:', e);
}Solution
Step 1: Check catch syntax
The catch block must have parentheses around the error variable:catch (e).Step 2: Verify other parts
Semicolons are optional in JavaScript; console.log is allowed in try; catch must come after try.Final Answer:
Missing parentheses aroundein catch -> Option AQuick Check:
Catch needs (error) [OK]
- Omitting parentheses in catch
- Thinking semicolons are mandatory here
- Reversing try and catch order
You want to safely parse a JSON string that might be invalid. Which code correctly uses try-catch to handle errors and return null if parsing fails?
?
Solution
Step 1: Understand JSON parsing risks
Parsing invalid JSON throws an error, so we use try-catch to handle it safely.Step 2: Check correct catch syntax and behavior
try { return JSON.parse(str); } catch (e) { return null; } uses correct catch syntax with(e)and returnsnullon error, which is the goal.Step 3: Identify errors in other options
try { JSON.parse(str); } catch { return null; } missesreturnbeforeJSON.parse(str), so returnsundefinedon success. try { return JSON.parse(str); } catch e { return null; } has syntax error (catch eneedscatch (e)). try { return JSON.parse(str); } catch (e) { throw null; } throwsnullinstead of returning it.Final Answer:
try { return JSON.parse(str); } catch (e) { return null; } -> Option CQuick Check:
Catch error with (e), return null on failure [OK]
- Omitting parentheses in catch
- Throwing instead of returning null
- Assuming catch without parameter always works
Ready to prove it?
Pass the test and this pattern moves unknown
