call apply bind 的区别

1作用:改变函数执行时的上下文,也就是改变this指向

2区别call bind 都是对函数的直接调用,而bind是返回的是函数,需要使用()再次去调用

let zs = {
 name: 'zs',
 age: 11,
 say: function (adderss, time) {
   console.log(this.name + this.age + adderss + time)
  }
}
let person = {
  name: 'person',
  age: 100
 }
zs.say.call(person,'南京', '2011-2-1')
zs.say.apply(person,['南京', '2011-2-1'])
zs.say.bind(person,'南京', '2011-2-1')()

你可能感兴趣的:(call apply bind 的区别)