当前位置:嗨网首页>书籍在线阅读

02-ES5还是ES6

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

18.1 ES5还是ES6

希望ES6的功能增强带来的好处已经足够让人心悦诚服了。然而现实并不完美,因为Web端还需要一段时间才能完全支持强大且一致的ES6标准。

在服务端,可以确定地知道哪些ES6特性能被支持(假设你能控制JavaScript引擎)。但在Web端,当把精心编写的代码通过HTTP(S)发送出去后,这些代码会在那些无法控制的JavaScript引擎中运行。更糟的是,你对那些可能被用到的浏览器毫不知情。

当然,这个问题也并非没法解决,“常青树”浏览器就是一个解决方案:通过自动更新(不需征求用户的意见),新的web标准可以更快、更一致地在这些浏览器上被推广。然而,这只能减少而不能彻底解决这些问题。

除非可以通过某种途径控制用户的环境,否者在可预见的未来中,只能部署ES5代码。不过不要担心,这并不是世界末日:转换编译器依旧可以让开发人员安心的编写ES6代码。虽然这会加大开发和调试的难度,但这也是为进步付出的代价。

本章会假设大家都在使用转换编译器,就像在第2章中讲过的。本章的所有样例都可以在最新的Firefox中运行(不需要使用转换编译器)。如果要将代码对外发布,那就需要对代码进行转换编译,从而确保它能在更多浏览器中稳定地工作。