有没有人注意到Continue这个奇怪的行为。在If语句中使用时,似乎会杀死模板中的所有后续代码。coldfusion在cfscript中的IF块中继续关键字/奇怪的行为
<cfscript>
writeoutput('test1, loop<br>');
for (x = 0; x > 5; x++) {
writeoutput(' gonna continue?');
continue;
writeoutput('continued within');
}
writeoutput('Out of loop..<br><br>');
writeoutput('test2, if<br>');
oURL = true;
if (oURL) {
writeoutput(' gonna continue?');
continue; // seems to kill all following code
writeoutput('continued within');
}
writeoutput(' out of If..');
writeoutput(' end');
for (x = 0; x > 5; x++) {
writeoutput('loop:' & x);
}
</cfscript>
继续将中止处理循环内的其余代码。似乎正在对我工作正常。 Docs http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSc3ff6d0ea77859461172e0811cbec0a0e0-7fdf.html#WSc3ff6d0ea77859461172e0811cbec0a0e0-7fe7 –
@Scp - FWIW,我确实看到了相同的结果,但是..好奇,为什么使用'继续'在if语句中,而不是重构if块?通常继续被设计为与循环一起工作。不知道在循环之外使用时期望的行为是什么...... – Leigh
我认为,使用'continue'或'break' out side循环将会像'abort'一样工作,因为没有下一个循环可用。 – RRK