原文: http://exploringjs.com/impatient-js/ch_faq-language.html
请参考“JavaScript 参考”部分。
本书通常会提到某项特性是否属于 ECMAScript 5(旧浏览器要求)或更新版本的一部分。对于更多详细信息(包括 ES5 之前的版本),几个不错的兼容性表可以在线获得:
请咨询以下来源:
JavaScript 经常无声地失败。我们来看两个例子。
第一个示例:如果运算符的操作数没有适当的类型,则会根据需要进行转换。
第二个例子:如果算术计算失败,则会得到错误值,而不是异常。
无声失败的原因是历史性的:直到 ECMAScript 3,JavaScript 才有异常。从那时起,它的设计者试图避免无声失败。
关于 JavaScript 的历史和演变的章节是一个回答这个问题的部分。
本书中的部分解释了如何做到这一点。