是否有任何压缩机负责移除在应用程序中无法调用的开关盒?
function execute_case(id) {
switch(id) {
case 0:
console.log("0");
break;
case 1:
console.log("1");
break;
case 2:
console.log("2");
break;
case 3:
console.log("3");
break;
default:
console.log("default");
break;
}
}
execute_case(1);
Run Code Online (Sandbox Code Playgroud)
如果以上就是我所拥有的,那么理论上情况0,2,3就是死代码并且永远不会被执行.在缩小代码时,是否有任何压缩器具有删除此代码的智能?
我正在看一段代码,它在一个switch语句中有超过200,000个案例,因此问题.
谢谢,-Vikrant
javascript performance yui-compressor google-closure-compiler
1.ps1创建并打印了2个对象.但只有一个出现在输出中.在以下情况下,两个对象都会出现:
(1)使用Format-List
(2)完成写入输出object1具有4个以上的属性(因此它会自动垂直格式化)
尝试理解此行为背后的原因.
PS C:\> cat .\1.ps1
$object1 = New-Object PSObject
$object1 | add-member NoteProperty -name pn1 -value pv1
$object1 | add-member NoteProperty -name pn2 -value pv2
$object1 | add-member NoteProperty -name pn3 -value pv3
write-output $object1
$object2 = New-Object PSObject
$object2 | add-member NoteProperty -name npn1 -value npv1
$object2 | add-member NoteProperty -name npn2 -value npv2
$object2 | add-member NoteProperty -name npn3 -value npv3
$object2 | add-member NoteProperty -name npn4 -value npv4
$object2 | add-member NoteProperty -name npn5 …Run Code Online (Sandbox Code Playgroud)