当前位置:首页 > JavaScript

js 实现 each

2026-02-01 14:41:53JavaScript

实现 each 方法

在 JavaScript 中,each 方法通常用于遍历数组或对象。以下是几种常见的实现方式:

js 实现 each

数组遍历的实现

function each(array, callback) {
  for (let i = 0; i < array.length; i++) {
    callback(array[i], i, array);
  }
}

对象遍历的实现

function each(object, callback) {
  for (let key in object) {
    if (object.hasOwnProperty(key)) {
      callback(object[key], key, object);
    }
  }
}

通用实现(同时支持数组和对象)

function each(collection, callback) {
  if (Array.isArray(collection)) {
    for (let i = 0; i < collection.length; i++) {
      callback(collection[i], i, collection);
    }
  } else {
    for (let key in collection) {
      if (collection.hasOwnProperty(key)) {
        callback(collection[key], key, collection);
      }
    }
  }
}

使用示例

// 数组遍历示例
each([1, 2, 3], function(item, index) {
  console.log(index, item);
});

// 对象遍历示例
each({a: 1, b: 2}, function(value, key) {
  console.log(key, value);
});

注意事项

  • 回调函数的参数顺序通常遵循 (value, key/index, collection) 的约定
  • 对象遍历时需要使用 hasOwnProperty 检查,避免遍历原型链上的属性
  • 可以使用 Array.isArray 判断是否为数组,确保正确处理不同类型的数据

标签: jseach
分享给朋友:

相关文章

js实现轮播

js实现轮播

实现基础轮播效果 使用HTML结构创建轮播容器和图片元素: <div class="carousel"> <div class="carousel-inner">…

js实现分页

js实现分页

分页的基本实现思路 在JavaScript中实现分页功能通常需要结合前端和后端逻辑。前端负责渲染分页控件和处理用户交互,后端负责提供分页数据。 前端分页实现 纯前端分页适用于数据量较小的情况,可以直…

js实现打印

js实现打印

使用window.print()方法实现打印 在JavaScript中,可以通过调用window.print()方法直接触发浏览器的打印功能。这会打开系统的打印对话框,用户可以选择打印机和设置打印选项…

js实现全选

js实现全选

实现全选功能的方法 在JavaScript中实现全选功能通常涉及监听全选复选框的点击事件,并根据其状态控制其他复选框的选中状态。以下是几种常见的实现方式: 基础DOM操作实现 通过获取所有目标复选框…

js实现复制功能

js实现复制功能

使用 document.execCommand 方法 这种方法适用于较旧的浏览器,但在现代浏览器中可能被逐步淘汰。通过创建一个临时的 textarea 元素,将文本内容放入其中,然后执行复制命令。…

js分组实现

js分组实现

分组实现方法 在JavaScript中,可以通过多种方式实现数组或对象的分组操作。以下是几种常见的方法: 使用Array.prototype.reduce() 通过reduce方法可以轻松实现数组分…