【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 中对象和数组的遍历有了更深入的理解。

相关推荐
Highcharts.js2 小时前
倒置百分比堆叠面积图表示列详解|Highcharts大气成分图表代码
开发语言·信息可视化·highcharts·图表开发·面积图·图表示例·推叠图
2601_958492552 小时前
Optimizing Engagement with Freehead Skate - HTML5 Game - Construct 3
前端·html·html5
csdn_aspnet2 小时前
C语言 Lomuto分区算法(Lomuto Partition Algorithm)
c语言·开发语言·算法
晨曦中的暮雨2 小时前
4.15腾讯 CSIG云服务产线 一面
java·开发语言
存在morning2 小时前
【GO语言开发实践】二 GO 并发快速上手
大数据·开发语言·golang
茉莉玫瑰花茶2 小时前
工作流的常见模式 [ 1 ]
java·服务器·前端
zhangxingchao3 小时前
AI应用开发六:企业知识库
前端·人工智能·后端
山峰哥3 小时前
SQL慢查询调优实战:从全表扫描到索引覆盖的完整复盘
前端·数据库·sql·性能优化
xiaoerbuyu12333 小时前
开源Java 邮箱 基于SpringBoot+Vue前后端分离的电子邮件
java·开发语言