请比较以下功能:
function maxOver2DArr(arr){
return arr.map(sub => {
return Math.max.apply(null, sub)
})
}
const arr1 = [[13, 27, 18, 26], [1000, 1001, 857, 1]]
console.log(maxOver2DArr(arr1)); //[ 27, 1001 ]
function maxOver2DArr(arr){
return arr.map(sub => {
return Math.max.apply(Array, sub)
})
}
const arr1 = [[13, 27, 18, 26], [1000, 1001, 857, 1]]
console.log(maxOver2DArr(arr1)); //[ 27, 1001 ]
是的,我确实要删除Math.max(Math)的this,而在第二个中将Math.max的this设置为Array吗?
所以,第一个参数是调用了this
的函数中的apply
的值,在这种情况下,函数为Math.max
但是Math.max
甚至不使用this
的值,因此无论您作为apply
的第一个参数传递什么,因此结果都相同