for循环遍历数组的标准写法是for(let i = 0; i
在 JavaScript 中,用
for循环遍历数组是最基础、最可控的方式之一,适合需要索引、提前退出或复杂控制逻辑的场景。标准 for 循环(推荐初学掌握)
使用传统的三段式
for (let i = 0; i 结构,直接通过索引访问每个元素:示例:
- 优点:可随时访问索引
i,支持break/continue,性能稳定- 注意:避免在循环中反复调用
arr.length(现代引擎已优化,但写成let len = arr.length更清晰)for...of示例:
- 适用场景:只关心元素本身,不依赖下标,也不需跳过或中断频繁
- 限制:拿不到当前索引(如需索引,可用
entries()或配合Array.prototype.keys())const numbers = [10, 20, 30]; for (const num of numbers) { console.log(num); // 10 → 20 → 30 }带索引的 for...of(用 entries())
如果既要简洁语法又要索引,可以用
arr.entries():
jm-jsjkxyjs02-zlm-405下载使用约定式提交(Conventional Commits)生成标准化的 Git 提交信息。适用于以下场景: (1) 暂存更改时需要提交信息; (2) 审查 diff 时希望获得结构化摘要; (3) 编写 PR 描述或变更日志(changelog)条目; (4) 用户明确要求“为本次更改编写提交信息”。 该功能会分析已暂存/未暂存的 diff,并生成按类型(type)划分范围的提交信息。
示例:
- 返回一个迭代器,每次产出
[index, value]的数组- 配合解构赋值,代码干净且信息完整
const fruits = ['apple', 'banana', 'cherry']; for (const [idx, fruit] of fruits.entries()) { console.log(`${idx}: ${fruit}`); // "0: apple" → "1: banana" → "2: cherry" }不建议用的“伪 for”方式
以下写法看似像
for,但实际不适用于数组遍历:反例(不要这样写):
for...in:遍历对象**属性名**,对数组会枚举索引字符串(如"0","1"),还可能遍历原型链上的可枚举属性,容易出错for (let i in arr)返回的是字符串索引,不是数字,且顺序不保证,慎用const arr = [1, 2, 3]; for (let i in arr) { console.log(typeof i); // "string",不是 number }掌握标准
for和for...of就能覆盖绝大多数数组遍历需求。按需选择:要索引和精细控制 → 用传统for;只取值、求简洁 → 用for...of。












