Please consult section .
4.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 (incl. pre-ES5 versions), there are several good compatibility tables available online:
- (by kangax, , zloirock)
- (by William Kapke)
- Mozilla’s have tables for each feature that describe relevant ECMAScript versions and browser support.
- Section “The TC39 process” describes how upcoming features are planned.
- Section answers various questions regarding upcoming features.
4.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.
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.
The chapter on the history and evolution of JavaScript has a section that answers this question.