SOURCE

// 数组map全参数使用 [].map(fun(val,index,arr), this)
let arrData = [11,22,33]

// arrData.map((el,index,arr)=>{
//     console.log(el,index,arr,option)
// },option={a:1})
// 11 0 [ 11, 22, 33 ] { a: 1 }
// 22 1 [ 11, 22, 33 ] { a: 1 }
// 33 2 [ 11, 22, 33 ] { a: 1 }

let arr = [1,2,3,4]
Array.prototype.myMap = function (fn, self){
    let newArr = []
    for(let i = 0; i < this.length; i++){
        newArr.push(fn.call(self,this[i],i,this))
    }
    return newArr
}
console.log(arr.myMap(function(val, index, arr){
    return val * 2
},{a: 1}))


console 命令行工具 X clear

                    
>
console