当前位置:首页 > JavaScript

js实现foreach

2026-02-02 06:50:19JavaScript

实现 forEach 方法

在 JavaScript 中,Array.prototype.forEach 是一个常用的数组遍历方法。以下是几种实现方式:

js实现foreach

基本实现

Array.prototype.myForEach = function(callback) {
  for (let i = 0; i < this.length; i++) {
    callback(this[i], i, this);
  }
};

带 thisArg 的实现

Array.prototype.myForEach = function(callback, thisArg) {
  for (let i = 0; i < this.length; i++) {
    callback.call(thisArg, this[i], i, this);
  }
};

使用 reduce 实现

Array.prototype.myForEach = function(callback) {
  this.reduce((_, current, index, array) => {
    callback(current, index, array);
  }, null);
};

注意事项

  • 原生的 forEach 不能中断遍历(没有类似 break 的功能)
  • 实现时需要考虑稀疏数组的处理
  • 回调函数的参数顺序是 (元素, 索引, 数组本身)

使用示例

const arr = [1, 2, 3];
arr.myForEach((item, index) => {
  console.log(`索引 ${index} 的值是 ${item}`);
});

这些实现方式展示了 forEach 方法的核心功能,可以根据具体需求进行调整。

标签: jsforeach
分享给朋友:

相关文章

js 实现vue

js 实现vue

实现 Vue 的核心功能 在 JavaScript 中实现 Vue 的核心功能需要模拟数据绑定、虚拟 DOM 和响应式系统。以下是一个简化版的实现思路: 响应式系统 通过 Object.define…

js实现列表

js实现列表

使用 JavaScript 实现列表 JavaScript 提供了多种方式来实现列表功能,包括数组操作、DOM 元素动态生成等。以下是几种常见的实现方法: 使用数组存储列表数据 数组是 JavaSc…

js实现拷贝

js实现拷贝

实现文本拷贝 使用 document.execCommand 方法(已废弃但兼容性较好): function copyText(text) { const textarea = document…

js实现游标

js实现游标

使用JavaScript实现游标 在JavaScript中,可以通过操作DOM元素的cursor样式属性来实现自定义游标效果。以下是几种常见的实现方法: 修改默认鼠标指针样式 通过CSS的curso…

js分页实现

js分页实现

分页的基本原理 分页的核心是通过计算当前页码和数据偏移量,从服务器或本地数据中截取对应范围的数据进行展示。通常需要以下参数:当前页码(currentPage)、每页条数(pageSize)、总数据量(…

js 实现全屏

js 实现全屏

使用 requestFullscreen 方法 通过调用元素的 requestFullscreen 方法可以实现全屏。该方法兼容现代浏览器,但不同浏览器可能需要前缀。 const element =…