首页 > 解决方案 > 如何将字符串添加到数组并返回字符串

问题描述

构建一个函数forLoop。它接受一个数组作为参数。从 0 开始计数,然后使用 for 循环将字符串添加到数组中 25 次。但不仅仅是任何字符串。如果您的 i 值为 1,则添加字符串“我是 1 个奇怪的循环。”;如果您的 i 值是其他值,请添加字符串“我是 ${i} 奇怪的循环。”。(还记得 if 和 else 的流控制吗?我们如何插入 i?)然后返回数组。

在线学习并且无法理解返回添加了 25 次字符串的数组需要什么?

function forLoop(array) {
  for (let i = 0; i < 25; i++) {
    if (i === 1) {
      console.log(`${array} I am 1 strange loop.`);
    } else {
      console.log(`${array}I am ${i} strange loops.`);
    }
  }
}

forLoop(array);

adds `"I am ${i} strange loop${i === 0 ? '' : 's'}."` to an array 25 times:
TypeError: Cannot read property 'slice' of undefined    

标签: javascriptarraysloopsfor-loop

解决方案


你很近。您只需要将push字符串转入数组,然后在最后返回数组。

function forLoop(arr) {
  for (let i = 0; i < 25; i++) {
    if (i === 1) {

      // Use `push` to add the string to the array
      arr.push(`I am 1 strange loop.`);
    } else {
      arr.push(`I am ${i} strange loops.`);
    }
  }

  // Return your array
  return arr;
}


// Create the array and pass it into the function
const arr = [];

// `out` captures the returned array
const out = forLoop(arr);
console.log(out);


推荐阅读