Function.prototype.bind = function(obj,arg) {
var arg=Array.prototype.slice.call(arguments,1);
var context = this;
var bound = function(newArg) {
arg = arg.concat(Array.prototype.slice.call(newArg));
return context.apply(obj,arg);
}
var F = function() {};
F.prototype = context.prototype;
bound.prototype = new F();
return bound;
}
var name = 'name';
var test ={
name:"test"
}
function fn() {
console.log(this.name);
}
console.log(fn());