for循环不遍历整个数组

时间:2016-12-30 00:57:06

标签: javascript

我有两个阵列

newArray1 = [104,101,108,108,111]; 

newArray2 = [104,101,121]; 

我只是检查一下array1中的某些数字是否在array2中。

for(i=0;i<newArray2.length;i++) { 
if(newArray.indexOf(newArray2[i]) > -1) { 
  console.log(newArray2[i]); 
} else { 

 }
}

当循环遍历 newArray2 时,循环仅遍历位置0和1,并且不会到达最后一个数字。我只是好奇为什么整个阵列没有完全循环。在for循环体中登录控制台时

console.log(newArray2[i]); 

我收到了

//104
//101

...不

//104
//101
//121 

1 个答案:

答案 0 :(得分:1)

首先,您在顶部命名变量newArray1newArray2,在循环中命名newArraynewArray2 ...我认为这只是你错了复制你的代码。

问题是你正在使用return,它结束了for循环...看起来你刚刚编辑了你的代码来修复它,你现在得到了你应该得到的结果! 121不在newArray1中,因此if语句中的console.log永远不会执行。在if(newArray.indexOf(newArray2[i]) > -1) {之前移动它,您将在控制台日志中看到121。