当前位置:首页 > JavaScript

js 实现 each

2026-04-06 07:30:00JavaScript

JavaScript 实现 each 方法

在 JavaScript 中,可以通过多种方式实现类似 jQuery 的 each 方法,用于遍历数组或对象。

js 实现 each

遍历数组的实现

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

遍历对象的实现

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

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

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);
});

注意事项

  • 对于对象遍历,建议使用 hasOwnProperty 检查以确保只遍历对象自身的属性
  • 可以通过在回调函数中返回 false 来提前终止遍历(类似 jQuery 的实现)
  • 现代 JavaScript 已内置类似方法,如 Array.prototype.forEachObject.keys().forEach()

标签: jseach
分享给朋友:

相关文章

js实现延迟

js实现延迟

实现延迟的方法 在JavaScript中,实现延迟操作有多种方式,以下是几种常见的方法: 使用setTimeout函数 setTimeout是JavaScript中最常用的延迟执行方法。它接受一个回…

js类实现

js类实现

使用类实现 JavaScript 功能 在 JavaScript 中,类(Class)是一种语法糖,基于原型继承机制。通过 class 关键字可以更直观地定义对象模板。 基本类定义 class…

js怎么实现异步

js怎么实现异步

异步实现方法 JavaScript中实现异步操作主要通过以下几种方式: Promise Promise是ES6引入的异步解决方案,用于处理异步操作的成功或失败状态。 const promise =…

js实现代码雨

js实现代码雨

实现代码雨效果 使用HTML5 Canvas和JavaScript可以轻松实现经典的代码雨效果。以下是完整的实现代码和说明: HTML结构 <!DOCTYPE html> <…

js实现文字滚动

js实现文字滚动

实现文字滚动的几种方法 使用CSS动画实现滚动 通过CSS的@keyframes和transform属性可以实现平滑的文字滚动效果。 <style> .scroll-text { w…

js图片轮播的实现

js图片轮播的实现

基础图片轮播实现 使用HTML、CSS和JavaScript实现一个简单的图片轮播效果。HTML部分定义轮播容器和图片,CSS负责样式和过渡效果,JavaScript处理逻辑。 <div cl…