在 `arguments` 之前重新分配参数
作者: harai创建于 2024年9月25日更新于 2024年12月12日
Uglify 版本 (uglifyjs -V)
uglify-js 3.19.3
JavaScript 输入
((e) => {
const t = e.pushState,
r = e.replaceState;
(e.pushState = function (r) {
const n = new CustomEvent("pushstate", { state: r });
return window.dispatchEvent(n), t.apply(e, arguments);
}),
(e.replaceState = function (t) {
const n = new CustomEvent("replacestate", { state: t });
return window.dispatchEvent(n), r.apply(e, arguments);
}),
(window.wcNavigation.historyPatched = !0);
})(window.history);执行 uglifyjs CLI 命令或使用 minify() 选项。
$ uglifyjs work/test.js --compress annotations=false,arguments=false,arrows=false,assignments=false,awaits=false,booleans=false,collapse_vars=false,comparisons=false,conditionals=false,dead_code=false,default_values=false,directives=false,evaluate=false,functions=false,hoist_exports=false,hoist_props=false,if_return=false,imports=false,inline=false,join_vars=false,loops=false,merge_vars=true,negate_iife=false,objects=false,properties=false,pure_getters=false,reduce_funcs=false,reduce_vars=true,rests=false,sequences=false,side_effects=false,spreads=false,strings=false,switches=false,templates=false,typeofs=false,unused=true,varify=true,yields=false --keep-fnames -b --output work/test.min.js禁用大多数压缩选项,并启用 merge_vars、reduce_vars、unused 和 varify。
内容来源: mishoo/UglifyJS