JavaScript设计模式与开发实践-第2章-this、call和apply

1、this的指向

三种情况:

  • 对象方法中的this
  • 普通函数中的this
  • 构造器中的this

需要注意:

  • 普通函数中的this在ES5中的strict模式下有所变化
  • 构造器中如果显式返回了一个对象,那么返回的将不是this所指向的对象
  • call和apply用来修改传入函数的this的指向

 

2、call和apply

两者的第一个参数都是指定this的指向,如果传入null,那么函数中的this指向原来的对象,浏览器中就是window

不同之处:call只接受两个参数,apply可接受不固定数量的参数

他们的用处:

  • 改变this指向
  • 模拟Function.prototype.bind
  • 借用其他对象的方法

 

3、Function.prototype.bind

posted on 2016-03-21 22:15  JayusTree  阅读(108)  评论(0编辑  收藏  举报

导航