37 lines
927 B
JavaScript
37 lines
927 B
JavaScript
var uglify = require("uglify-js");
|
|
var babel = require(".");
|
|
var zlib = require("zlib");
|
|
var vm = require("vm");
|
|
var fs = require("fs");
|
|
|
|
var code = fs.readFileSync("/Users/sebmck/Downloads/jquery-1.11.3 (1).js", "utf8");
|
|
|
|
function sizeof(name, fn) {
|
|
var start = Date.now();
|
|
var code = fn();
|
|
var end = Date.now();
|
|
console.log(name, "time:", (end - start) + "ms", "raw:", (code.length / 1000) + "KB", "gzipped:", (zlib.gzipSync(code).length / 1000) + "KB");
|
|
fs.writeFileSync("jquery." + name + ".js", code);
|
|
new Function(code);
|
|
}
|
|
|
|
sizeof("raw", function () {
|
|
return code;
|
|
});
|
|
|
|
sizeof("babel", function () {
|
|
return babel.transform(code, {
|
|
compact: true,
|
|
experimental: true,
|
|
blacklist: ["strict"],
|
|
plugins: ["minify-booleans", "merge-sibling-variables"]
|
|
}).code;
|
|
});
|
|
|
|
sizeof("uglify", function () {
|
|
return uglify.minify(code, {
|
|
mangle: false,
|
|
fromString: true
|
|
}).code;
|
|
});
|