JS 数组的遍历 —— 两种方式详解

JS 数组的遍历 ------ 两种方式详解

一、普通 for 循环

语法

javascript 复制代码
for (var i = 0; i < 数组名.length; i++) {
    // 数组名[i] 就是当前元素
}

示例

javascript 复制代码
let fruits = ['apple', 'banana', 'cherry', 'durian'];

for (var i = 0; i < fruits.length; i++) {
    console.log('第' + i + '个元素:' + fruits[i]);
}

// 输出:
// 第0个元素:apple
// 第1个元素:banana
// 第2个元素:cherry
// 第3个元素:durian

二、增强 for 循环(for...of)

语法

javascript 复制代码
for (var 变量名 of 数组名) {
    // 变量名 就是当前元素的值
}

示例

javascript 复制代码
let fruits = ['apple', 'banana', 'cherry', 'durian'];

for (var fruit of fruits) {
    console.log(fruit);
}

// 输出:
// apple
// banana
// cherry
// durian

与普通 for 的对比

javascript 复制代码
let arr = ['a', 'b', 'c'];

// 普通 for:需要手动通过 arr[i] 取值
for (var i = 0; i < arr.length; i++) {
    console.log(arr[i]); // 输出:a b c
}

// for...of:直接拿到元素值
for (var item of arr) {
    console.log(item); // 输出:a b c
}

for...of 更简洁,但无法直接获取索引。如果同时需要索引和值,普通 for 更合适。

相关推荐
禅思院1 小时前
AI对话前端从入门到崩溃:一个长对话引发的五层优化战争【五】
前端·架构·前端框架
kyle~1 小时前
前端---Zustand组件库(轻量快速精细化的状态管理方案)
前端
IT_陈寒1 小时前
为什么我的React状态更新总是不按套路出牌?
前端·人工智能·后端
小二·1 小时前
WebGPU 浏览器端跑大模型:让AI在网页里跑起来(WebLLM/Transformers.js实战)
开发语言·javascript·人工智能
心中有国也有家2 小时前
AtomGit Flutter 鸿蒙客户端:零外部资源的应用打包策略
android·javascript·flutter·华为·harmonyos
恋猫de小郭2 小时前
Fluter 共享内存多线程正在落地,IsolateGroupBound 来了
android·前端·flutter
十铭忘2 小时前
Vue3实现Pixso中的钢笔工具3——梳理函数调用
前端·vue.js
逝水无殇2 小时前
HTML 元素详解
开发语言·前端·html
糖墨夕2 小时前
AI Agent技术栈选择:Vue3 + NestJS + TypeScript 为什么是绝佳组合
前端·nestjs