当前位置: 首页 > news >正文

js遍历数组和对象的常用方法有哪些?

在JavaScript中,遍历数组和对象是常见且基础的操作。下面列出了一些常用的方法来遍历数组和对象:

  1. for 循环

    javascriptCopy Code

    let arr = [1, 2, 3, 4, 5]; for (let i = 0; i < arr.length; i++) { console.log(arr[i]); }

  2. for...of 循环

    javascriptCopy Code

    let arr = [1, 2, 3, 4, 5]; for (let value of arr) { console.log(value); }

  3. forEach 方法

    javascriptCopy Code

    let arr = [1, 2, 3, 4, 5]; arr.forEach(function(value) { console.log(value); });

  4. for...in 循环(不推荐用于数组,因为这会遍历数组的索引)

    javascriptCopy Code

    let arr = [1, 2, 3, 4, 5]; for (let index in arr) { console.log(arr[index]); }

    注意:for...in 主要用于遍历对象的属性,虽然也可以用于数组,但不推荐这样做,因为它会遍历数组的所有可枚举属性,包括原型链上的属性。

  5. map 方法‌(创建一个新数组,其中包含对原数组元素调用函数后的结果)

    javascriptCopy Code

    let arr = [1, 2, 3, 4, 5]; let newArr = arr.map(function(value) { return value * 2; }); console.log(newArr); // [2, 4, 6, 8, 10]

  6. filter 方法‌(创建一个新数组,包含通过所提供函数实现的测试的所有元素)

    javascriptCopy Code

    let arr = [1, 2, 3, 4, 5]; let filteredArr = arr.filter(function(value) { return value > 2; }); console.log(filteredArr); // [3, 4, 5]

遍历对象

  1. for...in 循环‌(用于遍历对象的属性)

    javascriptCopy Code

    let obj = {a: 1, b: 2, c: 3}; for (let key in obj) { console.log(key, obj[key]); }

  2. Object.keys 或 Object.values 或 Object.entries‌(返回对象键、值或键值对数组)

    javascriptCopy Code

    let obj = {a: 1, b: 2, c: 3}; // Keys Object.keys(obj).forEach(key => console.log(key)); // "a", "b", "c" // Values Object.values(obj).forEach(value => console.log(value)); // 1, 2, 3 // Entries (key-value pairs) Object.entries(obj).forEach(([key, value]) => console.log(key, value)); // "a" 1, "b" 2, "c" 3

  3. for...of 与 Object.entries‌(结合使用)

    javascriptCopy Code

    let obj = {a: 1, b: 2, c: 3}; for (let [key, value] of Object.entries(obj)) { console.log(key, value); // "a" 1, "b" 2, "c" 3 }

  4. Object.getOwnPropertyNames‌(返回对象自身的所有属性名,不包括继承的属性)

    javascriptCopy Code

    let obj = {a: 1, b: 2}; Object.getOwnPropertyNames(obj).forEach(key => console.log(key)); // "a", "b"

选择合适的方法取决于你的具体需求,例如是否需要修改原数组、是否需要返回新数组、是否需要处理对象属性等。通常,对于现代JavaScript开发,推荐使用for...of、`forEach

http://www.dtcms.com/a/516714.html

相关文章:

  • 127.0.01和localhost的区别是什么?
  • 系统集成项目管理工程师第八章:信息安全工程(精简版)
  • 网站建设信息平台wordpress 数据还原
  • 葛洲坝机电建设有限公司网站怎么获取网站数据做统计
  • Linux小课堂: SSH协议中的加密机制:对称加密与非对称加密的融合原理
  • MySQL----视图
  • 网站系统升级建设合同江西省美丽乡村建设公布网站
  • 已经具备GIS开发的能力,可以去哪些热门就业方向?
  • 福州++网站建设wordpress首页导航栏
  • Fruit框架:C++依赖注入解决方案
  • 《博弈论》
  • pw域名网站常州网站建设乛薇
  • 【Qt】TCP连接--客户端和服务器
  • 【CMakeLists.txt】 Qt 自动化构建配置详解
  • 分布式光伏气象站:专为户外光伏场景设计的气象监测设备
  • 网站模板是什么东莞全网推广
  • 高安网站建设公司网站优化就是搜索引擎优化
  • deadline调度学习
  • Shell 函数
  • 火星时代UE奶瓜粒子特效⑦
  • JS--正则表达式的用法
  • 为离职员工做的网站好的网站收入
  • AI智能体编程的未来方向有哪些?
  • 如何设置等长的最大走线长度
  • 搭建本地时间同步服务器
  • 百度前端面试核心考点深度解析(二)
  • 关于网站建设的电话销售话术建站之星安装模板失败
  • 对互联网网站的理解wordpress只能下载一个文件
  • 什么是MCP(python包和项目管理器uv)|常用mcp server整理(持续更新)
  • 基于MATLAB S函数实现多智能体间歇通信仿真