Function.prototype.myCall=function(ctx,...args){
ctx=(ctx===null||ctx===undefined)?globalThis:Object(ctx)
var key=Symbol('temp')
Object.defineProperty(ctx, key,{enumerable:false,
value:this,
});
var result=ctx[key](...args);
delete ctx.fn;
return result;
};
function method(a,b){
console.log(this,a,b);
return a+b;
}
method.myCall(null,1,2,3);
怎么手写call函数,且不使用apply,bind辅助
最新推荐文章于 2024-08-27 15:59:21 发布