Javascript UglifyJS压缩
我试图获得一个简单的UglifyJS(v2.3.6)示例来处理压缩 特别是“未使用”选项,如果从未使用过,变量和函数将被剥离 以下是我在命令行上的尝试:Javascript UglifyJS压缩,javascript,gruntjs,uglifyjs,Javascript,Gruntjs,Uglifyjs,我试图获得一个简单的UglifyJS(v2.3.6)示例来处理压缩 特别是“未使用”选项,如果从未使用过,变量和函数将被剥离 以下是我在命令行上的尝试: echo "function x() { return 1; }; function y() { return 2; }; y();" | uglifyjs -c hoist_funs=true,hoist_vars=true,unused=true 如您所见,函数“x”从未使用过 但它并没有从结果中消失: function x(){retu
echo "function x() { return 1; }; function y() { return 2; }; y();" | uglifyjs -c hoist_funs=true,hoist_vars=true,unused=true
如您所见,函数“x”从未使用过
但它并没有从结果中消失:
function x(){return 1}function y(){return 2}y();
有人知道我做错了什么吗?在您的示例中,函数
x
和y
是全局函数,可能被其他脚本使用:
function x() {
return 1;
};
function y() {
return 2;
};
y();
但是,您可以使用闭包定义范围:
(function(){
function x() {
return 1;
};
function y() {
return 2;
};
y();
})();
现在,
x
不在它的范围内使用,可以毫无顾虑地删除它。好的,这很公平。我想知道在什么情况下函数会被剥离?你有一个例子吗?啊,很好的观点。谢谢,这确实管用。也许是回答而不是评论,这样我可以给你一个分数。