一个最基本js函数调用的问题


This is my JSP page.

function a() { return false; } function b() {a(); alert("b"); }


今天遇到一个问题大概简化成这样 a函数已经return false为什么还会往下继续执行输出B 如何才能阻止

return只能管自己这个函数,管不了上一层。
你可以写
function b() {
if (!a()) return;
alert("b");
}

首先指出一个认识上的错误,函数的返回针对的是该函数本身,a()的返回只能说明a函数调用结束,在b()中调用a(),表明a只是b的一个步骤,就算a返回了
那跟b是否返回没有必然联系,楼上的方法可以解决a返回为false的情况。

function b() {return a(); alert("b"); }
因为a()是一个返回false的函数,在b()中没有return的作用。

a()这个方法,只是返回一个false,你如果想关联,可以用if。