美文网首页程序员
JavaScript第三章forEach循环第四课

JavaScript第三章forEach循环第四课

作者: 您好简书 | 来源:发表于2019-07-11 19:01 被阅读0次

forEach是ES5中操作数组的一种方法,主要功能是遍历数组,例如:

var arr = [1,2,3,4];
arr.forEach(alert);
等价于:

var arr = [1, 2, 3, 4];
for (var k = 0, length = arr.length; k < length; k++) {
alert(array[k]);
}
forEach方法中的function回调有三个参数:第一个参数是遍历的数组内容,第二个参数是对应的数组索引,第三个参数是数组本身

因此:

[].forEach(function(value,index,array){

//code something

});

等价于:

$.each([],function(index,value,array){

//code something

})
  
通过它,你可以遍历对象、数组的属性值并进行处理。

使用说明

each函数根据参数的类型实现的效果不完全一致:

1、遍历对象(有附加参数)

$.each(Object, function(p1, p2) {

     this;       //这里的this指向每次遍历中Object的当前属性值

     p1; p2;     //访问附加参数

}, ['参数1', '参数2']);

2、遍历数组(有附件参数)

$.each(Array, function(p1, p2){

     this;       //这里的this指向每次遍历中Array的当前元素

     p1; p2;     //访问附加参数

}, ['参数1', '参数2']);

3、遍历对象(没有附加参数)

$.each(Object, function(name, value) {

     this;      //this指向当前属性的值

     name;      //name表示Object当前属性的名称

     value;     //value表示Object当前属性的值

});

 

4、遍历数组(没有附加参数)

$.each(Array, function(i, value) {

     this;      //this指向当前元素

     i;         //i表示Array当前下标

     value;     //value表示Array当前元素

});

下面提一下jQuery的each方法的几种常用的用法

Js代码

 var arr = [ "one", "two", "three", "four"];     
 $.each(arr, function(){     
    alert(this);     
 });     
 

//上面这个each输出的结果分别为:one,two,three,four

var arr1 = [[1, 4, 3], [4, 6, 6], [7, 20, 9]]     
$.each(arr1, function(i, item){     
   alert(item[0]);     
});     
 
//其实arr1为一个二维数组,item相当于取每一个一维数组,   
//item[0]相对于取每一个一维数组里的第一个值   
//所以上面这个each输出分别为:1   4   7     
  
  
var obj = { one:1, two:2, three:3, four:4};     
$.each(obj, function(key, val) {     
    alert(obj[key]);           
});   
//这个each就有更厉害了,能循环每一个属性     
//输出结果为:1   2  3  4

写一个例子;

var arr = [1,2,3,4];
arr.forEach(function(value,index,array){
    array[index] == value;    //结果为true
    sum+=value;  
    });
console.log(sum);    //结果为 10
 

map:map即是 “映射”的意思 用法与 forEach 相似,用法即:

[].map(function(value,index,array){
 
  //code
 
})

1、forEach方法

语法:

array.forEach(function(currentValue, index, arr), thisValue)
参数:

在这里插入图片描述
<!DOCTYPE html>
<html lang="zh">

    <head>
        <meta charset="UTF-8" />
        <title>forEach方法</title>
    </head>

    <body>
        <script type="text/javascript">
        var num = [2,1,3];
        num.forEach(function(currentValue,index,arr){
            console.log("当前值:"+currentValue+"当前索引:"+index);
        });
        
        </script>
    </body>

</html>

相关文章

网友评论

    本文标题:JavaScript第三章forEach循环第四课

    本文链接:https://www.haomeiwen.com/subject/facjkctx.html