理解Call、Apply、bind

Apply、call

共同点:

  • 为了改变函数执行时的上下文(简单说就是为了改变当前函数体内的This的指向)

不同点:

  • 传入的参数不一样,func.apply(this,[arg1,arg2])、func.call(this,arg1,arg2);前者参数不固定时用,后者明确知道数量时使用

 

*注:理解this(参考阮一峰中的this四种用法)

 

领悟是出来的,而不是看出来的(理解并写出下列题目)。

1.定义一个log方法,让其可以使用console.log

2.当log方法的参数不定时,也可以console.log()出所有的参数

3.当传入参数("who are"),输出结果后缀加上"you"。//who are you

 

 

bind

 

 

 

 

 

 

 

 

 

 

 

 

posted @ 2017-02-20 23:18  -e  阅读(259)  评论(0编辑  收藏  举报