我有一个函数,它运行抛出一个输入值数组(for循环)。在这个循环中,我检查if子句,如果验证返回true或false(调用另一个函数)。当验证返回false时,我想打破for循环并在我的函数中返回false并跳出它。
function getValues(){
const values = [value1, value2, value3, value4, value5];
for(var i=0; i<values.length; i++) {
if(!validateForm(values[i]) {
//break the for loop and jump out of getValues()
}
}
}
在if子句中使用break语句我可以跳出for循环,但是不能确保只有在这种情况下函数才会返回false。
答案 0 :(得分:1)
只需return false;
function getValues(){
const values = [value1, value2, value3, value4, value5];
for(var i=0; i<values.length; i++) {
if(!validateForm(values[i]) {
//break the for loop and jump out of getValues()
return false;
}
}
return true;
}
答案 1 :(得分:1)
您可以将message
放在那里
return false
答案 2 :(得分:1)
当验证返回false时,你可以return false
,它会打破你的循环并从函数中返回值
function getValues(){
const values = [value1, value2, value3, value4, value5];
for(var i=0; i<values.length; i++) {
if(!validateForm(values[i]) {
//break the for loop and jump out of getValues()
return false;
}
}
return true;
}
答案 3 :(得分:1)
您需要将return false
置于if条件中,然后 return true
置于之后。
function getValues(){
const values = [value1, value2, value3, value4, value5];
for(var i=0; i<values.length; i++) {
if(!validateForm(values[i]) {
return false; //notice this line
}
}
return true ; //notice this line as well
}
答案 4 :(得分:1)
如果要退出函数执行,则应使用return
,如果要退出循环并继续执行函数 - 请使用break
。
return
的示例:
function loopFunc() {
for (var i = 0; i <= 10; i++) {
console.log("i:", i);
if (i === 5) {
return;
}
}
console.log("This log will not be printed");
}
loopFunc();
break
的示例:
function loopFunc() {
for (var i = 0; i <= 10; i++) {
console.log("i:", i);
if (i === 5) {
break;
}
}
console.log("This log will be printed");
}
loopFunc();