javascript - 用 Javascript 中的 for loop 遍历 arrays 只返回第一个 value?

此循环仅返回数组的第一个索引并停在那里。

const numArr = [2,4,6,8,10];

const iterate = (array) => {
    for (let i = 0; i < array.length; i++) {
        return array[i]
    }
};

console.log(iterate(numArr));

回答1

使用 return 将在第一个 iteration 中结束循环

尝试

const numArr = [2,4,6,8,10];

const iterate = (array) => {
    for (let i = 0; i < array.length; i++) {
        console.log(array[i])
    }
};

iterate(numArr);

回答2

正如 Take-Some-Bytes 在他的评论中提到的那样,这是因为 return 声明。在 JavaScript 中,函数将在调用 return 语句时停止执行。

在您的情况下,您调用该函数,该函数开始循环遍历数组,它从第一项开始,看到一个返回语句并停止该函数的执行。

另一方面:这种迭代方法似乎有点样板或重新发明已经可用的东西。

例如,您是否尝试过:

const numArr = [2,4,6,8,10];
numArr.forEach(item => {
  console.log(item)
})

上面的代码做同样的事情:

const numArr = [2,4,6,8,10];

const iterate = (array) => {
    for (let i = 0; i < array.length; i++) {
        console.log(array[i])
    }
};

iterate(numArr);

相似文章

python - python 猜数字游戏,猜多

我正在学习编程1并且正在做1-100的猜数游戏,我需要一个命令,如果我猜超过100,程序会看到它并告诉我,我不知道我应该如何得到这个答案。我已经猜到我认为该命令会是什么样子以及它最远的地方,但如果我完...

最新文章