【JavaScript】遍历对象和数组

文章目录

    • [1. 遍历对象](#1. 遍历对象)
    • [2. 遍历数组](#2. 遍历数组)
      • [for 循环](#for 循环)
      • forEach()
      • [for...of 循环](#for...of 循环)
    • [3. 遍历多维数组](#3. 遍历多维数组)
    • [4. 总结](#4. 总结)

在 JavaScript 中, 遍历是一种常见的操作,用于访问对象和数组中的元素 。本篇博客将将介绍 JavaScript 中遍历对象和数组的方法,以帮助你更好地理解和运用这些概念。

1. 遍历对象

for...in 循环

javascript 复制代码
let person = {
  name: "John",
  age: 30,
  gender: "male"
};

for (let key in person) {
  console.log(key + ": " + person[key]);
}

在上述例子中,使用 for...in 循环遍历了对象 person 的所有属性,并输出属性名和对应的值。

Object.keys()

javascript 复制代码
let keys = Object.keys(person);

for (let key of keys) {
  console.log(key + ": " + person[key]);
}

在上述例子中,使用 Object.keys() 方法获取了对象 person 的所有属性名,然后通过 for...of 循环遍历。

Object.entries()

javascript 复制代码
for (let [key, value] of Object.entries(person)) {
  console.log(key + ": " + value);
}

在上述例子中,使用 Object.entries() 方法获取了对象 person 的所有键值对,然后通过 for...of 循环遍历。

2. 遍历数组

for 循环

javascript 复制代码
let fruits = ["Apple", "Banana", "Orange"];

for (let i = 0; i < fruits.length; i++) {
  console.log(fruits[i]);
}

在上述例子中,使用 for 循环遍历了数组 fruits 的所有元素。

forEach()

javascript 复制代码
fruits.forEach(function(fruit) {
  console.log(fruit);
});

在上述例子中,使用 forEach() 方法遍历了数组 fruits 的所有元素。

for...of 循环

javascript 复制代码
for (let fruit of fruits) {
  console.log(fruit);
}

在上述例子中,使用 for...of 循环遍历了数组 fruits 的所有元素,提供了更简洁的语法。

3. 遍历多维数组

javascript 复制代码
let matrix = [
  [1, 2, 3],
  [4, 5, 6],
  [7, 8, 9]
];

for (let row of matrix) {
  for (let element of row) {
    console.log(element);
  }
}

在上述例子中,通过嵌套的 for...of 循环遍历了多维数组 matrix 的所有元素。

4. 总结

遍历是 JavaScript 中常见的操作,通过 for...in 循环、Object.keys()Object.entries()for 循环、forEach() 方法和 for...of 循环等方法,你可以方便地遍历对象和数组中的元素。对于多维数组,可以使用嵌套的循环进行遍历。希望通过本篇博客,你对 JavaScript 中对象和数组的遍历有了更深入的理解。

相关推荐
潜创微科技--高清音视频芯片方案开发3 小时前
2026年C转DP芯片方案深度分析:从适配场景到成本性能的优选指南
c语言·开发语言
Thomas.Sir3 小时前
第三章:Python3 之 字符串
开发语言·python·字符串·string
刘景贤3 小时前
C/C++开发环境
开发语言·c++
美狐美颜sdk4 小时前
从人脸关键点到动态贴图:面具特效在美颜SDK中的实现原理
前端·图像处理·人工智能·直播美颜sdk·美颜api
我命由我123454 小时前
React Router 6 - 编程式路由导航、useInRouterContext、useNavigationType
前端·javascript·react.js·前端框架·html·ecmascript·js
威联通网络存储4 小时前
告别掉帧与素材损毁:威联通 QuTS hero 如何重塑影视后期协同工作流
前端·网络·人工智能·python
anOnion4 小时前
构建无障碍组件之Tabs Pattern
前端·html·交互设计
Dxy12393102164 小时前
Python 根据列表中某字段排序:从基础到进阶
开发语言·windows·python
competes4 小时前
学生需求 交易累计积分,积分兑换奖品
java·大数据·开发语言·人工智能·java-ee