Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在函数内为else语句创建循环_Javascript_Arrays_Function_Loops_If Statement - Fatal编程技术网

Javascript 在函数内为else语句创建循环

Javascript 在函数内为else语句创建循环,javascript,arrays,function,loops,if-statement,Javascript,Arrays,Function,Loops,If Statement,我正在尝试创建一个循环以包含else语句。它与下面的if语句完美配合,但当尝试放入else语句时,它要么不显示任何内容,要么创建6个循环。我想我把else语句放错地方了。有人能给我解释一下a)把else语句放在哪里,b)在函数中结尾大括号的嵌套标准吗 这是我得到的,在我放入else语句之前,它工作得很好。谢谢 var-sports=[“高尔夫”、“板球”、“网球”、“羽毛球”、“壁球”]; 功能检查运动(sportToCheck){ 对于基于变量名的(var i=0;i,我想您不必在此上下文中

我正在尝试创建一个循环以包含else语句。它与下面的if语句完美配合,但当尝试放入else语句时,它要么不显示任何内容,要么创建6个循环。我想我把else语句放错地方了。有人能给我解释一下a)把else语句放在哪里,b)在函数中结尾大括号的嵌套标准吗 这是我得到的,在我放入else语句之前,它工作得很好。谢谢

var-sports=[“高尔夫”、“板球”、“网球”、“羽毛球”、“壁球”];
功能检查运动(sportToCheck){

对于基于变量名的(var i=0;i,我想您不必在此上下文中使用
else
,但您希望在找到运动后立即结束循环/函数:

function checkSport(sportToCheck) {
  for (var i = 0; i <= sports.length; i++) {
    if (sportToCheck == sports[i]) {
      alert("yes we offer that sport");
      return; // stop the execution of the function
    } else {
      console.log("Do nothing so you don't need this else statement.");
    }
  }
  alert("No we don't offer that sport"); //  If the loop ends and cannot find any match
}
功能检查运动(sportToCheck){

for(var i=0;i不需要
else
语句。只需运行sports数组中的每个可能值,并使用
return
语句暂停该函数中的进一步脚本执行

函数返回
true
false
,具体取决于字符串是否在运动数组中

var-sports=[“高尔夫”、“板球”、“网球”、“羽毛球”、“壁球”];
功能检查运动(sportToCheck){

对于(var i=0;i,因为您的函数是
check()
,为了尊重做一件事规则,最好返回
true
false

有很多方法可以解决你的问题,但我更喜欢

var-sports=[“高尔夫”、“板球”、“网球”、“羽毛球”、“壁球”];
功能检查运动(sportToCheck){
返回sportToCheck==sports.find((sport)=>sport==sportToCheck);
}
console.log(checkSport(“football”);//预期:false

console.log(checkSport(“网球”);//Expect:true
你到底想做什么?假设你想检查字符串参数(在checkSport()中)是否存在于运动数组中,那么上面的代码工作得很好。你可以将此代码重构为
警报(sports.includes(“网球”)?“是…”或“否…”)
对不起,我可以知道你为什么需要
其他
?你也许可以告诉我,我的学习还很新。我想要一份其他的声明,上面写着“不,我们不提供那种运动”如果我通过单独检查节点并将其附加到最后一个else的末尾来放入,如果包括所有5个节点,则它在循环中工作,但不工作,感谢回复如果我将运动更改为足球,则我希望出现一个else语句"很抱歉,我们没有这样做。只是当我把Else语句放进去的时候,它不起作用,我试着把它放在任何地方,但是放在哪里和花括号的层次嵌套是我的问题,我想没有理由使用第二个
if
语句,循环条件应该是
谢谢,我正在早期学习javascript,我确信有一种更好的方法来做我想做的事情,我只是想知道我怎样才能按照上面的方法来做,主要是为了帮助我理解它,谢谢你用
0
开始你的索引,并且你使它等于长度。