Function.prototype.bind()
Function.prototype.call()
Function.prototype.apply()
var obj = {
name: "jay-z",
yell: function () {
console.log(this.name);
},
}
var obj2 = {
name : "beyonce"
}
obj.yell(); // jay-z
obj.yell.call(obj2); // beyonce
var yell2 = obj.yell.bind(obj2)
yell2() // beyonce