概述:call 和 apply 都是用来改变 this 的指向。作用相同。传递的参数方式不一样。
参数说明:
第一个参数相同(指向目标对象 | 不传默认 window)。
第二个参数不相同 。call 可以接受一个参数列表, apply 只能接受参数数组。
let a = {
value: 1
}
function getValue(name, age) {
console.log(name)
console.log(age)
console.log(this.value)
}
getValue.call(a, 'hwl', '24')
getValue.apply(a, ['hwl', '24'])
// 结果
// hwl
// 24
// 1
// hwl
// 24
// 1