ES6 可能出现的兼容问题及处理方法

Posted 苛学加

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES6 可能出现的兼容问题及处理方法相关的知识,希望对你有一定的参考价值。

ES6

ECMAScript 6(简称ES6)是于2015年6月正式发布的javascript语言的标准,正式名为ECMAScript 2015(ES2015)。

新的标准很友好,提供了如箭头函数等好用的特性,感兴趣的可跳转JavaScript ES6语法新特性整理,ES6必须掌握的知识点,更强大更方便

兼容问题

同时也给我们带来了一些兼容性上的问题。
在安排测试人员对功能进行测试的时候,发现了一个问题:
在他们自己使用的手机上,怎么测试都是正常的;但是一换到公司的测试手机上就用不了了。

因为公司的测试手机系统版本还停留在比较早的版本上,无法支持ES6的语法。

  • android手机上,Android 6以下的机型可能会报错,因为6.0之前版本的webview不支持ES6。

  • ios手机上,iOS 12 才对ES6有了非常完善的支持,最低支持到iPhone 5S

处理办法

混合开发的APP

如果是混合开发的APP,那打包的时候可以使用指定的浏览器内来彻底处理这个问题,但是会使得安装包体积变大。
比较常见的一般是使用腾讯的X5内核。

web页面

  • 开发调试时
    使用Babel,通过<script type="text/babel"></script>的方式,让代码在babel中工作,此种办法性能较差,一般仅在开发调试阶段使用。

  • 正式发布是
    使用前端打包工具,如grunt,webpack等,将ES6代码自动编译为ES5,不会存在性能问题。

如果只是少量的.js文件,还可以使用在线工具手动转换:es6console 在线转换及运行

以上是关于ES6 可能出现的兼容问题及处理方法的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序常见错误及基本排除方法

30秒就能看懂的JavaScript 代码片段

ES6 很可能会出现简单的 promise 错误

各个浏览器的兼容问题及样式兼容处理(不定期补充)

十条jQuery代码片段助力Web开发效率提升

十条jQuery代码片段助力Web开发效率提升