假设我有一系列功能:
function a(){
//do this, do that
b();
}
function b(){
//do this, do that
c();
}
function c(){
//do this, do that
// program ends at this point
}
a();
您可以假设,从执行代码开始,我们从a()
转到b()
再到c()
,程序终止......
我想知道的是......是否可以将代码置于// do this, do that
b()
部分的某个位置,具体取决于某些条件返回a()
然后继续执行无需返回b()
中停止的位置,但如果需要,可以重新启动b()
?
我知道,你在想什么......“这肯定是一个JavaScript GOTO
问题!”在某种程度上它是......但是说真的,是否可以完全从函数A中断并转到函数B而不必担心它返回到函数A以完成它离开的位置?
答案 0 :(得分:2)
您可以像这样使用JavaScript的return
语句
function a(){
//do this, do that
b();
}
function b(){
if (some_random_condition) {
return;
}
c();
}
a();
return
语句可以转到a
而无需执行余下的b
功能。