当前位置:首页 > JavaScript

js实现foreach

2026-02-02 06:50:19JavaScript

js实现foreach

实现 forEach 方法

在 JavaScript 中,Array.prototype.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 方法的核心功能,可以根据具体需求进行调整。

js实现foreach

标签: jsforeach
分享给朋友:

相关文章

js实现轮播图

js实现轮播图

轮播图实现方法 基础HTML结构 <div class="slider"> <div class="slides"> <img src="image1.jpg…

jquery.js

jquery.js

jQuery 简介 jQuery 是一个快速、简洁的 JavaScript 库,用于简化 HTML 文档遍历、事件处理、动画设计和 Ajax 交互。它的设计宗旨是“Write Less, Do Mor…

js实现vue路由

js实现vue路由

Vue路由基础实现 使用Vue Router实现前端路由需要先安装并配置路由库。Vue Router是Vue.js官方的路由管理器。 安装Vue Router: npm install vue-r…

js实现轮播

js实现轮播

实现轮播图的基本思路 轮播图的核心逻辑是通过定时切换展示的图片或内容,通常结合左右滑动按钮和指示器(小圆点)增强交互性。以下是基于原生JavaScript的实现方法。 HTML结构 构建轮播图的HT…

js实现继承

js实现继承

原型链继承 通过将子类的原型指向父类的实例实现继承。子类实例可以访问父类原型上的属性和方法。 function Parent() { this.name = 'parent'; } Paren…

js 实现继承

js 实现继承

原型链继承 通过让子类的原型对象指向父类的实例来实现继承。子类实例可以访问父类原型上的属性和方法。 function Parent() { this.name = 'parent'; } Par…