for循环通过初始化、条件判断、更新三部分实现固定次数高效迭代,适用于已知执行次数的场景,如遍历定长数组或重复n次操作。

用 for 循环实现固定次数的高效迭代,关键在于明确初始化、终止条件和更新逻辑,让循环体专注处理单次任务,不额外做判断或状态维护。
for 循环的基本结构与执行逻辑
for 循环由三部分组成:初始化表达式、条件表达式、更新表达式。它天然适合“已知执行次数”的场景,比如遍历长度确定的数组、重复执行某操作 N 次。
- 初始化(如
let i = 0)只在循环开始前运行一次 - 每次进入循环体前,先判断条件(如
i ),为 false 则直接退出 - 每次循环体执行完后,自动执行更新(如
i++),再重新判断条件
遍历数组时避免常见低效写法
很多新手会在循环条件中反复调用 arr.length,看似无害,但在大数组或性能敏感场景下会带来轻微开销。
Java开发手册规约集合,基于阿里巴巴Java开发手册(嵩山版)。 涵盖7大维度:编程规约、异常日志、单元测试、安全规约、MySQL数据库、工程结构、设计规约。 当用户需要:(1) 编写或审查Java代码 (2) 检查命名/代码规范 (3) 处理异常和日志 (4) 编写单元测试 (5) 安全编码 (6) 数据库设...
- ✅ 推荐写法:提前缓存长度,减少属性访问次数
for (let i = 0, len = arr.length; i - ❌ 不推荐:每次判断都读取 length
for (let i = 0; i - 注意:现代引擎对此优化较好,但养成缓存习惯更稳妥,尤其在嵌套循环中
灵活控制步长与方向,适配不同迭代需求
for 循环不局限于从 0 到 n-1 的正向递增。只要逻辑清晰,它可以高效支持反向遍历、跳跃取值等场景。
- 反向遍历(如倒序打印数组):
for (let i = arr.length - 1; i >= 0; i--) { console.log(arr[i]); } - 每隔两项取一个(索引为偶数的元素):
for (let i = 0; i - 从第 3 个元素开始遍历:
for (let i = 2; i
结合 break 和 continue 精确干预流程
当固定次数的大循环中需要提前退出或跳过某些轮次时,break 和 continue 能显著提升效率,避免无效计算。
- 找到目标值立即停止(不必走完全部):
for (let i = 0; i - 跳过特定索引或不符合条件的项:
for (let i = 0; i
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










