javascript中倒序遍历数组需从arr.length-1开始,条件为i>=0,每次i--,确保覆盖索引0到length-1;适用于需索引、删除元素、反转数组或同步操作多数组等场景。

在 JavaScript 中,用传统 for 循环倒序遍历数组,核心是让循环变量从数组最后一个索引开始,逐步递减到 0。
基本写法:从 length - 1 开始递减
数组的最后一个元素索引是 arr.length - 1,所以循环初始值设为它,条件是 i >= 0,每次迭代执行 i--。
示例:
const arr = ['a', 'b', 'c', 'd'];
for (let i = arr.length - 1; i >= 0; i--) {
console.log(arr[i]); // 输出: d, c, b, a
}
注意边界:别漏掉索引 0
终止条件必须写成 i >= 0,而不是 i > 0,否则会跳过第一个元素(索引为 0 的项)。
-
i > 0→ 只遍历到索引 1,不访问索引 0 -
i >= 0→ 正确覆盖全部索引:length−1, …, 1, 0
适用场景:需要索引或修改原数组时更直接
相比 for...of 或 forEach,倒序 for 循环能方便地获取当前索引,并支持边遍历边删除元素(例如用 splice),避免正序删除导致索引偏移的问题。
- 删除满足条件的元素(推荐倒序,防止漏删)
- 实现数组反转逻辑(不依赖
reverse()) - 需要同时操作多个同长度数组的对应位置
小技巧:空数组也不报错,可安全使用
当 arr.length 为 0 时,i = -1,循环条件 i >= 0 立即为假,循环体不会执行——无需额外判断数组是否为空。
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











