ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 4.常见问题:JavaScript > 原文: [http://exploringjs.com/impatient-js/ch_faq-language.html](http://exploringjs.com/impatient-js/ch_faq-language.html) ### 4.1 有哪些 JavaScript 的优秀参考资料? 请参考[“JavaScript 参考”](ch_big-picture.html#javascript-references)部分。 ### 4.2 如何了解哪些 JavaScript 特性在哪些运行环境中受支持? 本书通常会提到某项特性是否属于 ECMAScript 5(老一些的浏览器通常支持的版本)或更新版本的一部分。对于更多详细信息(包括 ES5 之前的版本),可以在线参考这几个不错的兼容性表: * [各种引擎的 ECMAScript 兼容性表](http://kangax.github.io/compat-table/)(作者 [kangax](https://twitter.com/kangax) 、[webbedspace](https://twitter.com/webbedspace)、[zloirock](https://twitter.com/zloirock)) * [Node.js 兼容性表](https://node.green)(作者 [William Kapke](https://twitter.com/williamkapke)) * Mozilla 的 [MDN Web 文档](https://developer.mozilla.org/en-US/docs/Web/JavaScript)为每个特性提供了表格,用于描述相关的 ECMAScript 版本和浏览器支持。 * [“Can I use...”](https://caniuse.com/)记录了 Web 浏览器支持的各类特性(包括 JavaScript 语言特性)。 ### 4.3 我在哪里可以找到 JavaScript 将来计划添加哪些功能? 请参考: * [“TC39 流程”](ch_history.html#tc39-process)描述了新功能是如何被规划的。 * [“FAQ:关于 TC39 流程”](ch_history.html#tc39-process-faq)回答有关即将推出的功能的各种问题。 ### 4.4 为什么 JavaScript 经常出问题而不报错? JavaScript 经常出问题而不报错。我们来看两个例子。 第一个示例:如果运算符的操作数不是正确的类型,则会根据需要,隐式地进行转换。 ```js > '3' * '5' 15 ``` 第二个例子:如果算术计算失败,则会得到一个错误的值,而不是抛出异常。 ```js > 1 / 0 Infinity ``` 经常出问题而不报错的原因是历史遗留问题:直到 ECMAScript 3,JavaScript 才有异常。从那时起,它的设计者才开始避免出问题而不报错。 ### 4.5 为什么我们不能通过删除过时的功能和坑来清理 JavaScript? [这个章节](ch_history.html#backward-compatibility)回答了这个问题。 ### 4.6 如何快速得到一段 JavaScript 代码的运行结果? 本书中的[这一部分](ch_big-picture.html#trying-out-code)解释了如何做到这一点。