Package Exports
- babel-plugin-minify-constant-folding
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (babel-plugin-minify-constant-folding) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
babel-plugin-minify-constant-folding
Tries to evaluate expressions and inline the result.
Example
In
"a" + "b"
2 * 3;
4 | 3;
"b" + a + "c" + "d" + g + z + "f" + "h" + "i"
[a, b, c].concat([d, e], f, g, [h]);
["a", "b", "c"].join();
["a", "b", "c"].join('@');
[1, 2, 3].length;
[1, 2, 3][1];
[1, 2, 3].shift();
[1, 2, 3].slice(0, 2);
[a, b, c].pop();
[a, b, c].reverse();
"a,b,c".split(",");
"abc"[0];
"abc".charAt();
"abc".charAt(1);
"abc".length;
Out
"ab";
6;
7;
"b" + a + "cd" + g + z + "fhi";
[a, b, c, d, e, f, g, h];
"a,b,c";
"a@b@c";
3;
2;
2;
[1, 2];
c;
[c, b, a];
["a", "b", "c"];
"a";
"a";
"a";
"b";
3;
Installation
npm install babel-plugin-minify-constant-folding --save-dev
Usage
Via .babelrc
(Recommended)
.babelrc
{
"plugins": ["minify-constant-folding"]
}
Via CLI
babel --plugins minify-constant-folding script.js
Via Node API
require("@babel/core").transform("code", {
plugins: ["minify-constant-folding"]
});
Options
tdz
- Account for TDZ (Temporal Dead Zone)