美文网首页
forEach 浅析

forEach 浅析

作者: 梦夜空中最亮的星 | 来源:发表于2017-12-08 11:36 被阅读0次

    今天聊聊forEach;

    首先看看foreach的用法:

    1. 原生JS的forEach:

    参数:value数组中的当前项, index当前项的索引, array原始数组;

    var ary = [1,2,3,4];

    ary.forEach(function (value,index,array) {

        console.log(value+"------"+index +"------------"+array);

    })

    输出结果:

    1------0------------1,2,3,4

    2------1------------1,2,3,4

    3------2------------1,2,3,4

    4------3------------1,2,3,4

    2. jQuery的$.each

    参数:index当前项的索引;value数组中的当前项;array要遍历的数组;

    var ary = [1,2,3,4];

    $.each(ary,function(index, value, array) {

    console.log(index+"------"+ value);

    });

    输出结果:

    0------1

    1------2

    2------3

    3------4

    如果浏览器不支持foreach方法,那么需要我们自己封装一个都兼容的方法,代码如下:

    if( !Array.prototype.forEach) {

    Array.prototype.forEach = function forEach(callback){

    // 获取数组长度

    var len =this.length;

    if(  typeof callback != "function" ) {

    throw new TypeError() ;

     }

    // thisArg为callback 函数的执行上下文环境

    var thisArg = arguments[1];

    for(vari =0; i < len; i++) {

    if ( i in this ) {

    // callback函数接收三个参数:当前项的值、当前项的索引和数组本身

    callback.call( thisArg , this[i] , i , this ) ; 

     }

     }

     }

    }

    相关文章

      网友评论

          本文标题:forEach 浅析

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