O'Reilly logo

JavaScript® 24-Hour Trainer by Jeremy McPeak

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 37. Handling Errors

The common mistakes covered in Lesson 36 are caused by the developer's breaking some of the syntax rules in JavaScript. As you will undoubtedly find out in your own time, errors in your application can occur even if you follow JavaScript's syntax rules. These are called runtime errors because they occur while the program is running. Runtime errors are caused by a variety of factors:

  • A flaw in your code's logic, such as a failure to validate user input before processing it

  • Conditions beyond your control, such as a network error on the user's computer

  • Murphy's Law (anything that can go wrong will go wrong)

Note

Technically, syntax errors are usually runtime errors as well, because the errors occur while the browser loads and attempts to execute the code.

When writing an application you want to be informed of every error that occurs so that you can fix it. But when you deploy your app, the last thing you want users to see is an error message that means nothing to them. Bugs will occur in our software—it's a given. But we can do our best to prevent them, and handle them when they do occur, to provide the best user experience we can.

PREVENTING ERRORS

There are a number of things you can do if you want error-free web pages. First, ensure that your HTML markup is up to snuff. Close all elements that need closing, and properly nest elements. Many HTML-validator services are available for free on the Internet. A popular one is the W3C's Markup Validation Service at ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required