思路:闭包。注意,返回的是函数数组,故可以使用map将arr中的每个元素映射为一个函数,函数的返回值是fn(el)。
function makeClosures(arr, fn)
{
return arr.map(el=>{
return function(){
return fn(el)
}
})
}
思路:bind返回的也是一个函数。this指的是如果fn中有使用this,则将使用第一个参数的对应属性!!
function makeClosures(arr, fn) {
let result=[]
for(let i=0;i<arr.length;i++)
result[i]=fn.bind(this,arr[i])
return result
}
总结:注意,是函数数组!!



京公网安备 11010502036488号