首页 > 解决方案 > 如何从数组的 for 循环的第一次迭代中删除“未定义”?

问题描述

只要 index 大于等于 0,就迭代 console.log()。但是,当我运行此代码时,我总是以 undefined 结尾。我如何编写代码以使这种情况不会发生?

let array = ["Fiji", "Santorini", "Bora Bora", "Vancouver"];
let arrayLength = array.length;

for(let index = arrayLength; index => 0; index = index - 1)
{
    console.log(array[index]);
}

这修复了它:


让 arrayLength = array.length - 1

索引=> 0;

标签: javascriptloopsfor-loop

解决方案


正如@Pointy 评论的那样,“大于等于”运算符>=不是=>. 您还应该let index = arrayLength-1从 Javascript 开始从 0 开始计数,因此最后一项的索引比数组的长度小一。这应该运行良好:

let array = ["Fiji", "Santorini", "Bora Bora", "Vancouver"];
let arrayLength = array.length;

for(let index = arrayLength-1; index >= 0; index = index - 1)
{
    console.log(array[index]);
}

推荐阅读