简要介绍Babel6的loose mode。
简介
babel的松散模式将ES6代码转换为不遵循ES6语义的ES5代码。
两种模式
babel中的许多插件有两种模式:
正常模式尽可能地遵循ECMAScript 6的语义。
松散模式产生更简单的ES5代码。
通常,建议不要使用松散模式。优点和缺点是:
优点:生成的代码可能更快,并且与旧引擎兼容。它也趋于更清洁,更“ES5式”。
缺点:当你从ES6转换到ES6时,你可能会遇到问题。这很少是值得冒险的。
打开松散模式
es2015-loose预设是标准ES6预设的松散版本。它提供了一个概观如何打开某个插件的松散模式:
1 | module.exports = { |
示例:松散模式和正常模式输出区别
让我们看看模式的区别如何影响到以下代码的输出:
1 | class Point { |
正常模式
正常模式下,类的属性通过Object.defineProperty
:
1 | "use strict"; |
松散模式
松散模式下,通过正常添加方法方式,更像es5写法:
1 | "use strict"; |