是否有可能让 youth
从 box
中返回/停止执行?直接,而不是像这样:
function youth(){
var check = true;
function box(){
//code
check = false;
}
//code
while(check){
//code;
}
return false;
}
(其中有一个 check
变量被 box
更改)
最佳答案
不,你不能,除非你从内部函数抛出一个异常(但这并不真正算作“返回”,而且它无论如何都不是一个好的设计模式)。
允许一个函数让它的调用者返回一个值是没有意义的,因为调用函数甚至可能没有在相同的上下文中声明——也许是其他一些函数接受了一个函数参数,并且传递了-in 函数不应该能够修改被调用函数的行为。
关于javascript - 从它调用的函数中中止外部函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4582057/