javascript - 循环返回两个数组

标签 javascript arrays for-loop

我很好奇如何在函数中返回两个数组。例如,假设我们有一个国家数组和一个待办事项列表。

var countries = [
 "Japan",
 "USA"
]

var todo = [
 "go to the park",
 "drink amazing whiskey"
]

我希望答案出来的方式是在循环之后我们会看到

"Japan I will go to the park"
"USA I will drink amazing whiskey"

我现在编写函数的方式是:

function myTrip(countries, todo){
  var newArr = [];

  for (var i = 0; i < countries.length; i++) {
   newArr += countries[i]
  }
  for (var i = 0; i < todo.length; i++) {
   newArr += todo[i]
  }
  return newArr
}

老实说,我不知道该去哪里。我知道我需要将它们放入一个数组中,例如 states[i] + "I will "+ todo[i] 但我不确定如何做到这一点。我需要 return 而不是 newArr =+ states[i] 吗?或者我的逻辑和代码完全错误?对此的所有帮助将不胜感激。

最佳答案

如果 todo 数组中的每个键都对应于 countries 数组中的键,那么您所要做的就是循环您的 countries数组并在 todo 数组上使用相同的键。

var countries = [
    "Japan",
    "USA",
    "Sweden"
]

var todo = [
    "go to the park",
    "drink amazing whiskey"
]

for (var i = 0; i < countries.length; ++i) {
    // If key is not found in the `todo` array, skip entry in loop.
    if ( ! todo[i]) continue;
    
    console.log(countries[i] + ' ' + todo[i]);
}

关于javascript - 循环返回两个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43297772/

相关文章:

php - 根据先前表单中选定的 list 创建新表单

javascript - Flexslider 插件幻灯片出现故障

javascript - IE Date.toLocaleTimeString().split 不返回字符串数组

php - 在多维数组中搜索键并返回它的路径

arrays - Fisher-Yates 洗牌算法错误

javascript - Ajax 表行需要身份验证

javascript - 将类添加到标签名称

c - 枚举数组时遇到问题

java - 在for循环java中的下一次迭代之前等待()

javascript - 从字符串中返回最大的 3 位数字 block - JavaScript