首页 > 代码库 > How to use the function of bind

How to use the function of bind

The usage of  bind  is to define a specified scope for called function. Because the key this is easy to refer another objet, experically window, instead of itself. Please pay attention to look at the following example:

 1 //Global variables
 2 window.name="Chromium";
 3 
 4 var person={
 5   name:"Pin"
 6 }
 7 
 8 function say()
 9 {
10    alert("My name is "+this.name+"!");
11 }
12 
13 say(); //the result is : My name is Chromium!
14 
15 var sayfunction=say.bind(person);
16 
17 sayfunction(); //the result is : My name is Pin!

When the function say assign to a variable sayfunction, the scope of this function has been changed. However, if you use the function of bind  to refer a specified object person, the scope will own the refer object person.