我使用JS编写了一个表单验证,以return(true);
结尾function check() {
....validation code
return(true);
}
我想要的是,需要检查check()函数是否返回true,我想执行另一个函数。
我尝试过的代码如下:
if(check() === true) {
function() {
//Another function code
}
}
答案 0 :(得分:16)
您应该使用return true;
,并且您的if语句不需要进行=== true
比较。
function check() {
//validation code
return true;
}
if(check()) {
//Another function code
}
<强> JSFIDDLE 强>
答案 1 :(得分:6)
首先,return
不是函数,你可以这样做:
return true;
现在,要仅在myFunction
返回check
时才执行true
,您可以执行以下操作:
check() && myFunction()
这是:
的简写if(check()){
myFunction();
}
您无需将check
的返回值与true
进行比较。它已经是一个布尔值。
现在,您可以在myFunction()
语句中使用任何JavaScript代码,而不是if
。如果你真的想要使用,例如,myFunction
,你必须确保你已经在某处定义了它,首先:
function myFunction() {
// Do stuff...
}
答案 2 :(得分:0)
您只需修改第一个代码段即可。 return
是一个关键字,您要做的就是将其作为一个函数执行。
function check() {
....validation code
return true;
}
你需要稍微更改你的第二个片段,然后执行这个函数...最简单的方法是使用花括号将它包装为匿名函数:
if(check()) {
(function() {
//Another function code
})();
}
答案 3 :(得分:-2)
你没有在你的肯定条款中调用该函数,只是声明它。要调用匿名函数,请执行以下操作:
(function (){...})()
答案 4 :(得分:-2)
你可以输入
$this.myFunction=function(){
//code here
}
并在 myFunction
函数为真时执行一些代码,您可以使用布尔值
例如
if(//your function is true){
等等