当前位置:首页 > 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实现选项卡

js实现选项卡

实现选项卡的基本思路 选项卡通常由一组标签和对应的内容面板组成。点击标签时,显示对应的内容面板,隐藏其他面板。实现这一效果需要结合HTML结构、CSS样式和JavaScript交互逻辑。 HTML结…

js如何实现继承

js如何实现继承

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

js实现授权

js实现授权

授权流程设计 授权流程通常涉及前端与后端的交互,常见方案包括OAuth2.0、JWT等。以JWT为例的典型流程: 用户提交凭证(如用户名密码)到认证服务 服务端验证通过后生成包含用户信息的J…

js 实现滚动

js 实现滚动

实现滚动的方法 使用 window.scrollTo() window.scrollTo() 方法可以滚动到文档中的特定位置。可以指定 x 和 y 坐标,或者使用平滑滚动的选项。 // 滚动到指定位…

js实现菜单

js实现菜单

实现基本HTML结构 使用HTML创建菜单的基本框架,通常包含<ul>和<li>元素。示例结构如下: <ul id="menu"> <li><…

js实现显示隐藏

js实现显示隐藏

显示隐藏的实现方法 在JavaScript中,实现元素的显示和隐藏可以通过多种方式完成。以下是几种常见的方法: 修改CSS的display属性 通过改变元素的display属性可以在none(隐藏)…