Function.prototype._call = function(target,...args){
target = (typeof target == "object" ? target : window); // 保证要指向的是对象类型
target["temporary"] = this; // 注意这里的this是一个待执行的函数,并作为属性暂时存入target对象中,
let result = target["temporary"](args); // 执行属性函数,这时该函数就可以使用target中的属性和外部传入的参数了
delete target["temporary"]; // 删除暂存的属性
return result; // 返回函数执行结果
}