当前位置:首页 > JavaScript

js 实现each

2026-03-01 02:05:41JavaScript

实现 each 函数的方法

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

遍历数组的 each 函数

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

遍历对象的 each 函数

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

通用 each 函数(支持数组和对象)

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 检查以避免遍历原型链上的属性
  • 可以使用 breakreturn false 来提前终止遍历(需在实现中添加相应逻辑)

js 实现each

标签: jseach
分享给朋友:

相关文章

js实现拖拽

js实现拖拽

实现拖拽的基本步骤 通过监听鼠标事件(mousedown、mousemove、mouseup)实现拖拽功能。以下是核心代码逻辑: const draggableElement = document.…

js实现图片放大缩小

js实现图片放大缩小

实现图片放大缩小的基础方法 使用CSS的transform: scale()属性可以快速实现图片的放大缩小效果。通过JavaScript动态修改该属性值: const img = document…

js实现复制到剪贴板

js实现复制到剪贴板

使用document.execCommand方法(传统方式,已废弃但部分浏览器仍支持) 该方法适用于旧版浏览器,但已被标记为废弃。执行前需确保文本已被选中: function copyToClip…

js实现tab选项卡切换

js实现tab选项卡切换

实现Tab选项卡切换的JavaScript方法 使用纯JavaScript实现Tab切换功能,可以通过监听点击事件动态切换内容显示状态。以下是两种常见实现方式: 基础DOM操作实现 // 获取…

js实现驼峰

js实现驼峰

实现驼峰命名的几种方法 使用正则表达式和字符串替换 通过正则表达式匹配字符串中的特定模式(如下划线或短横线),并将其后的字母转换为大写,同时移除分隔符。 function toCamelCase(…

js实现自举

js实现自举

实现 JavaScript 自举的方法 JavaScript 自举(Bootstrap)通常指通过 JavaScript 动态加载自身或依赖的脚本,实现运行时环境的初始化或扩展。以下是几种常见实现方式…