是否可以让youth
从box
内返回/停止执行?直接,不是像:
function youth(){
var check = true;
function box(){
//code
check = false;
}
//code
while(check){
//code;
}
return false;
}
(其中有一个check
变量box
更改)
答案 0 :(得分:8)
不,你不能,除非你从内部函数抛出一个异常(但这并不算作“返回”,并且它不是一个真正好的设计模式)。
允许函数使其调用者返回一个值是没有意义的,因为调用函数甚至可能不会在同一个上下文中声明 - 也许它是一些接受函数参数的其他函数,并且通过了-in函数不应该能够修改被调用函数的行为。