首页 >web前端 >前端问答 > 正文

javascript中forEach()方法是干什么的

原创2021-10-13 17:08:380529

在javascript中,forEach()方法用于为数组执行迭代操作,可以调用数组的每个元素,并将元素传递给回调函数进行处理;语法“array.forEach(function(Value,index,arr),thisValue)”。

本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

Array 类型为每个数组定义了 forEach() 原型方法,使用该方法可以为数组执行迭代操作。

forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。

具体语法如下:

array.forEach(function(currentValue, index, arr), thisValue)

参数说明如下:

  • array:一个数组对象。

  • function(currentValue, index, arr):必需参数,最多可以接收三个参数的函数。forEach 将为数组中的每个元素调用 callbackfn 函数一次。

    • currentValue:必需。当前元素

    • index:可选。当前元素的索引值。

    • arr:可选。当前元素所属的数组对象。

  • thisArg:可选参数,callbackfn 函数中的 this 可引用的对象。如果省略 thisArg,则 this 的值为 undefined。

对于数组中出现的每个元素,forEach 方法都会调用 callbackfn 函数一次,采用升序索引顺序,但不会为数组中空元素调用回调函数。

除了数组对象之外,forEach 方法还可以用于有 length 属性且具有已按数字编制索引的属性名的任何对象,如关联数组对象、Arguments 等。

forEach 方法不直接修改原始数组,但回调函数可能会修改它。在 forEach 方法启动后修改数组对象所获得的结果如表所示。

回调函数修改数组的影响
forEach 方法启动后的条件元素是否传递给回调函数
在数组的原始长度之外添加元素
添加元素以填充数组中缺少的元素是,如果该索引尚未传递给回调函数
元素已更改是,如果该元素尚未传递给回调函数
从数组中删除元素否,除非该元素已传递给回调函数

示例1:使用 forEach 迭代数组 a,然后把每个元素的值和下标索引输出显示,代码如下:

function f(value,index,array) {
    console.log("a[" + index + "] = " + value);
}
var a = ['a', 'b', 'c'];
a.forEach(f);

输出:

1.png

示例2:使用 forEach 迭代数组 a,然后计算数组元素的和并输出

var a = [10, 11, 12], sum = 0;
a.forEach (function (value) {
    sum += value;
});
console.log(sum);  //返回33

输出:

1.png

【推荐学习:javascript高级教程

以上就是javascript中forEach()方法是干什么的的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

相关文章

相关视频


网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • 专题推荐

    作者信息

    青灯夜游

    今天学习一小步,明天提升一大步

    最近文章
    php怎么分割数组为几部分657
    php怎么删除指定下标的数组值824
    php怎么获取当前方法的参数值729
    推荐视频教程
  • JavaScript标准参考手册JavaScript标准参考手册
  • JavaScript极速入门JavaScript极速入门
  • JavaScript函数与闭包JavaScript函数与闭包
  • JavaScript对象与常用设计模式JavaScript对象与常用设计模式
  • JavaScript正则表达式基础与实战JavaScript正则表达式基础与实战
  • JavaScript 经典案例JavaScript 经典案例
  • 视频教程分类