Javascript 如果我在一个函数中返回两次,第二个会覆盖第一个吗?
我正在用Javascript编写一个函数。基本上,如果数组第一个元素中的字符串包含数组第二个元素中字符串的所有字母,则它应该返回Javascript 如果我在一个函数中返回两次,第二个会覆盖第一个吗?,javascript,return,Javascript,Return,我正在用Javascript编写一个函数。基本上,如果数组第一个元素中的字符串包含数组第二个元素中字符串的所有字母,则它应该返回true。我正在输入[“hello”,“hey”] 我在第二种方法中哪里做错了?在第一种情况下,逻辑退出并返回值false,只要它满足您的情况下的条件(array.indexOf(string2[I])==-1) 在第二种情况下,数组的第一个元素不满足条件,并落入else条件,因此退出,返回true。在第一种情况下,逻辑退出并返回值false,只要它满足条件(array
true
。我正在输入[“hello”,“hey”]
我在第二种方法中哪里做错了?在第一种情况下,逻辑退出并返回值
false
,只要它满足您的情况下的条件(array.indexOf(string2[I])==-1)
在第二种情况下,数组的第一个元素不满足条件,并落入
else
条件,因此退出,返回true
。在第一种情况下,逻辑退出并返回值false
,只要它满足条件(array.indexOf(string2[i])=-1)
在您的情况下
在第二种情况下,数组的第一个元素不满足条件,并落入
else
条件,因此退出,返回true
。在第一种情况下,逻辑退出并返回值false
,只要它满足条件(array.indexOf(string2[i])=-1)
在您的情况下
在第二种情况下,数组的第一个元素不满足条件,并落入
else
条件,因此退出,返回true
。在第一种情况下,逻辑退出并返回值false
,只要它满足条件(array.indexOf(string2[i])=-1)
在您的情况下
在第二种情况下,数组的第一个元素不满足条件,并落入
else
条件,因此退出,并返回true
。第二个方法此时中断:
返回真值
当返回出现正匹配时,FOR循环终止
在初始版本中,由于只设置了result=true
,因此FOR
循环将继续,直到遇到FALSE,然后出现显式的中断
但是,在另一个版本中,if语句将遇到返回FALSE
或返回TRUE
,它将只迭代一次,返回结果并结束FOR循环。您的第二个方法在此点中断:
返回真值
当返回出现正匹配时,FOR循环终止
在初始版本中,由于只设置了result=true
,因此FOR
循环将继续,直到遇到FALSE,然后出现显式的中断
但是,在另一个版本中,if语句将遇到返回FALSE
或返回TRUE
,它将只迭代一次,返回结果并结束FOR循环。您的第二个方法在此点中断:
返回真值
当返回出现正匹配时,FOR循环终止
在初始版本中,由于只设置了result=true
,因此FOR
循环将继续,直到遇到FALSE,然后出现显式的中断
但是,在另一个版本中,if语句将遇到返回FALSE
或返回TRUE
,它将只迭代一次,返回结果并结束FOR循环。您的第二个方法在此点中断:
返回真值
当返回出现正匹配时,FOR循环终止
在初始版本中,由于只设置了result=true
,因此FOR
循环将继续,直到遇到FALSE,然后出现显式的中断
但是,在另一个版本中,if语句将遇到RETURN FALSE
或RETURN TRUE
,它将只迭代一次,返回结果并结束FOR循环。aRETURN
语句立即终止函数。在第二个实现中,提前返回false
确实是正确的,但是return true
语句是错误的-它将在第一个元素上返回true,而第二个数组中不包含该元素。实际上,您正在否定循环-只检查第一个元素,并立即返回一个值
您在这里的目的是提前只返回false
值:
for (i = 0; i < string2.length; i++) {
if (array.indexOf(string2[i]) == -1) {
return false;
}
}
// If we finished the loop and haven't returned false, the return value is true:
return true;
for(i=0;i
Areturn
语句立即终止函数。在第二个实现中,提前返回false
确实是正确的,但是return true
语句是错误的-它将在第一个元素上返回true,而第二个数组中不包含该元素。实际上,您正在否定循环-只检查第一个元素,并立即返回一个值
您在这里的目的是提前只返回false
值:
for (i = 0; i < string2.length; i++) {
if (array.indexOf(string2[i]) == -1) {
return false;
}
}
// If we finished the loop and haven't returned false, the return value is true:
return true;
for(i=0;i
Areturn
语句立即终止函数。在第二个实现中,提前返回false
确实是正确的,但是return true
语句是错误的-它将在第一个元素上返回true,而第二个数组中不包含该元素。实际上,您正在否定循环-只检查第一个元素,并立即返回一个值
你在说什么
for (i = 0; i < string2.length; i++) {
if (array.indexOf(string2[i]) == -1) {
return false;
}
}
// If we finished the loop and haven't returned false, the return value is true:
return true;