Na przykład, mam następujący kod:Dlaczego uglifyjs nie usuwa martwego kodu?
if ("a" !== "a") {
console.log('really?');
}
var a = 5;
Potem piszę uglifyjs code.js -o code.min.js
. W rezultacie mam następujące:
if("a"!=="a"){console.log("really?")}var a=5;
Jak włączyć usuwanie martwego kodu wewnątrz instrukcji if?
Co to jest martwy kod? '' console.log''? lub cały blok if? Ten pierwszy jest doskonale poprawnym kodem o całkowicie poprawnym celu. Jest bardzo różny od optymalizacji '' if (a == 1 || a == 1) ''. Plus myślę, że wulgaryzm ma bardzo ograniczoną optymalizację. – CppLearner
Kod wewnątrz bloku if nigdy nie będzie działał. Więc jest martwy. – user2991036
potrzebujesz narzędzia do analizy statycznej, a nie tylko analizatora AST. – CppLearner