//模拟call方法
Function.prototype.call_ = function(obj, ...args) {
obj = obj ? Object(obj) : window;
obj.fn = this; // this即fn
obj.fn(...args);
delete obj.f;
};
var name = "她";
var o = {
name: "你",
};
function fn(a, b) {
console.log(a + b + this.name);
}
fn.call_(o, "我", "爱"); // 我爱你
fn.call_(null, "我", "爱"); // 我爱她