javascript的bind方法

 bind方法可以永久的绑定上下文对象,无论被谁调用,上下文都是固定的:

 1 /**
 2  * Created by wp on 2015-09-26.
 3  */
 4 var user={
 5     name:'wpmoon',
 6     func: function() {
 7         console.log(this.name);
 8     }
 9 };
10 
11 var foo={
12     name:'foobar'
13 };
14 
15 foo.func=user.func;
16 foo.func();//输出的是foobar
17 
18 foo.func1=user.func.bind(user);
19 foo.func1();//输出的是wpmoon
20 
21 func=user.func.bind(foo);
22 func();//输出的是foobar
23 
24 func2=func;
25 func2();//输出的是foobar

foo.func1使用了bind方法,将user作为this指针绑定到user.func,调用foo.func1()时,this指针为user,所以结果是wpmoon

posted @ 2015-09-26 23:18  wpmoon  阅读(87)  评论(0)    收藏  举报