1、编译到 ES2015+
把 ES2015+ 的代码编译成 ES5,体积会增大好几倍,运行速率也会减慢。在当下2018年,大部分现代浏览器已经支持 ES6 语法。我们要做的,就是把代码编译到 ES2015+,然后给少数的老旧浏览器留一份 ES5 的代码即可。
具体的做法就是使用
支持这个标签的浏览器必然支持 async/await, Promise, Class, 箭头函数, Map/Set, fetch 等等。
<script type="module" src="main.js"></script>
<script type="nomodule" src="main.es5.js"></script>
现代主流浏览器能识别 type=“module”,就加载第一条 ES2015+ 的代码。老旧浏览器不能识别 type=“module” 和 type=“nomodule”,就会加载第二条 ES5 的代码。