您好,登錄后才能下訂單哦!
這篇文章主要講解了“js的apply方法的用法”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“js的apply方法的用法”吧!
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
}
感謝各位的閱讀,以上就是“js的apply方法的用法”的內容了,經過本文的學習后,相信大家對js的apply方法的用法這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。