JavaScript apply手写实现
先来看看apply的调用及调用后的效果:
Test.apply(obj,[36,37]);//输出如下:11"male"3637
下面开始实现我们自己的apply:
Function.prototype.myApply=function(obj,args){obj.fn=this;letres;if(args&&args.length){res=obj.fn(...args);}else{res=obj.fn();}deleteobj.fn;returnres;}
下面调用一下我们自己的myApply函数试试看效果:
Test.myApply(obj,[55,56]);//输出如下:11"male"5556
可以看到,我们自己手写的myApply函数同样是达到了效果,原理同上就不在此赘述了。
JavaScript apply手写实现代码
Function.prototype.myApply=fucntion(context){
if(typeofthis!=='function'){
thrownewTypeError('notafunction!')
}
context=context||window
context.fn=this
letresult
if(arguments[1]){
result=context.fn(...arguments[1])
}else{
result=context.fn()
}
deletecontext.fn
returnresult
}
上一篇:pdf文档用什么打开
下一篇:怎么使用iziModal