apply()和call()是函数对象的方法,用来改变this的指向,它们的语法是:
函数.call(对象,参数列表),参数列表为普通变量的排列
函数.apply(对象,参数列表),参数列表为一个数组
利用apply的这一点可以取出数组中的最大值,举例:
var arr=[1,3,5,6,7,8];
var maxNum=Math.max.apply(Math,arr);
console.log(maxNum);
输出结果为 8
若使用call的话,利用es6语法也能实现,举例:
var arr=[1,3,5,6,7,8];
var maxNum=Math.max.call(Math,...arr);
console.log(maxNum);
输出结果为 8