我很困惑为什么在/finally
之后被执行(版本:Java 8 update 5)break
continue
testTryFinally();
function testTryFinally()
{
try
{
print("Try 1");
for(var i = 0; i < 2; i++)
{
break;
}
print("Try 2");
}
finally
{
print("Finally executed");
}
}
执行:
.../tmp>jjs test.js
输出break
:
Try 1
Finally executed
Try 2
Finally executed
输出continue
代替break
Try 1
Finally executed
Finally executed
Try 2
Finally executed
我尝试在浏览器中执行相同的代码(替换print()
为console.log()
输出与 Firebug 中的预期一致
Try 1
Try 2
Finally executed