HomepageExploring JavaScript (ES2024 Edition)
You can support this book: buy it or donate
(Ad, please don’t block.)

7 FAQ: JavaScript

7.1 What are good references for JavaScript?

Please see “JavaScript references” (§8.3).

7.2 How do I find out what JavaScript features are supported where?

This book usually mentions if a feature is part of ECMAScript 5 (as required by older browsers) or a newer version. For more detailed information (including pre-ES5 versions), there are several good compatibility tables available online:

7.3 Where can I look up what features are planned for JavaScript?

Please see the following sources:

7.4 Why does JavaScript fail silently so often?

JavaScript often fails silently. Let’s look at two examples.

First example: If the operands of an operator don’t have the appropriate types, they are converted as necessary.

> '3' * '5'
15

Second example: If an arithmetic computation fails, you get an error value, not an exception.

> 1 / 0
Infinity

The reason for the silent failures is historical: JavaScript did not have exceptions until ECMAScript 3. Since then, its designers have tried to avoid silent failures.

7.5 Why can’t we clean up JavaScript, by removing quirks and outdated features?

This question is answered in “How to not break the web while changing JavaScript” (§5.6).

7.6 How can I quickly try out a piece of JavaScript code?

“Trying out JavaScript code” (§10.1) explains how to do that.