【发布时间】:2019-07-03 02:07:04
【问题描述】:
我的代码从第一个数组中的第一项开始并遍历第二个数组。如果第一个数组中的第一项与第二个数组中的项相同,则将值打印到控制台。所以在这个 sn-p Nandos 和 KFC 应该打印到控制台。
一旦第一个数组中的第一项与第二个数组中的所有项进行了比较,我们将移动到第一个数组中的第二项并将其与第二个数组中的所有项进行比较。
单击按钮后,我想执行 for 循环。
我试图使 for 循环成为一个函数,并在单击按钮后执行该函数,但什么也没发生。
<button id="search">Search</button>
var restaurantsOne = ["Nandos", "King Rooster", "Chick-Fil-A", "Dominos", "KFC"];
var restaurantsTwo = ["Nandos","MacDonalds","Burger King","KFC","Pizza Hut"];
for (var i=0; i<=restaurantsOne.length; i++) {
for (var j=0; j<=restaurantsTwo.length; j++){
if (restaurantsOne[i] == restaurantsTwo[j]){
console.log(restaurantsOne[i]);
}
}
}
我希望在单击按钮后执行 for 循环
【问题讨论】:
-
您可以取消循环并执行
restaurantsOne.filter(x => restaurantsTwo.includes(x)) -
我不需要它们来获得我想要的结果,即找到两个数组中相互关联的餐厅
-
不是过滤器在做什么,它会循环,并检查 x 是否也在另一个数组中,如果不是,那么它不会被包含在内。虽然你的循环很好,如果它有效
标签: javascript arrays for-loop