When last we spoke, we discussed the various Events in JavaScript. In this tutorial we will go over some of the errors that can occur and how to deal with them. I know, I know: how can any of your programs possibly fail when you have been taught by the JavaScript Ninja? Well, you can blame that on the good folks that create the various browsers.
JavaScript Errors - Throwing the Ball (and Exceptions) (Page 3 of 4 )
The Throw statement allows you to create an exception. This is useful when trying to generate informative error messages.
Let's say you wanted to create a program that asked a user a question when the page first loaded. If they answer it right, they get to view the page; if not something else happens to them. Here it is in code:
<html>
<body>
<script type="text/javascript">
var name=prompt("Enter your name:","")
try
{
if(name == "James")
throw "FirstError"
else if(name == "Houston")
throw "SecondError"
else if(isNaN(name))
throw "ThirdError"
}
catch(er)
{
if(er=="FirstError")
alert("Alert! Alert! James is too heavy for the page to load!")
if(er == "SecondError")
alert("Alert! Alert! You may not haxor our bases!")
if(er == "ThirdError")
alert("Greetings...we've been expecting you.")
}
</script>
</body>
</html>
This code displays a prompt asking for the user's name. Depending on the name entered, a different message will occur prior to the page loading. If the user types in James, it throws the FirstError exception, and the following alert box will appear:
If the user types in Houston, it triggers the SecondError exception, and this alert is displayed:
And lastly, if the user enter anything else (even if they type in james in lowercase), the ThirdError exception is triggered and this alert will appear:
Note that the word throw must be written in lowercase or you will receive Javascript errors, which of course is what we are trying to avoid.