私は(うなり声を介して)uglifyjsを使用しており、グローバル変数を難読化しようとしていますが、機能していません。mangle で「トップレベル」オプションを使用しています。
誰かが理由を答えることができるかどうか疑問に思っていましたか?
grunt をバイパスして uglify を直接使用する場合、私が使用しているコマンドラインは次のとおりです。
uglifyjs js/a.js -c -m toplevel -o dist/scripts.js
a.js の内容は次のとおりです。
foo = 5;
function bar() {
var excellent = 10;
var myvar = excellent*excellent;
console.log('myvar = ' + myvar);
}
bar();
function useAGlobal() {
console.log('foo = ' + foo);
}
useAGlobal();
醜いコードは次のとおりです。
function o(){var o=10,n=o*o;console.log("myvar = "+n)}function n(){console.log("foo = "+foo)}foo=5,o(),n();
グローバル関数bar()
を表示してuseAGlobal()
問題なく難読化できますが、変数foo
が変更されないのはなぜですか?
foo
「var」キーワードを として宣言すると、var foo = 5;
難読化されます。ここで何が欠けていますか?
ありがとう!