javascript - 關(guān)于call()函數(shù)的用法
問(wèn)題描述
我看到好多人在調(diào)用其它函數(shù)時(shí)用call函數(shù),我覺(jué)得這樣看起來(lái)簡(jiǎn)潔之外讓我這種菜鳥(niǎo)不好理解。下面的例子是實(shí)現(xiàn)fn 和result返回的結(jié)果是一樣的 就是將str1和str2返回,下面兩種方式結(jié)果都一樣,麻煩大神說(shuō)下call一般除了綁定對(duì)象外,一般用在什么情況下,問(wèn)題可能描述的不清楚請(qǐng)見(jiàn)諒。1.
function func(fn,str1){ return result = function (str2){return fn.call(this,str1,str2)}//這種方式我自己可以明白 fn獲得他的父級(jí)函數(shù)fnc返回的str1+str2字符串,自己再返回出來(lái)2.function func(fn,str1){ return result = function (str2){return str1+str2 } fn(func(null,str1,str2))}
問(wèn)題解答
回答1:MDN - Function.prototype.call()
回答2:其實(shí)很想說(shuō),像this,call,apply,bind,new,都是js的基石,是每一個(gè)希望成為前端工程師必須要掌握的,同時(shí)這些東西也是js里比較燒腦的,比較難掌握好的,需要多翻兩本書(shū),多寫(xiě)些demo。估計(jì)要講清楚這些,我能寫(xiě)一篇老長(zhǎng)老長(zhǎng)的文章,如果有耐心看完的話,建議還不如翻書(shū)。
相關(guān)文章:
1. mac里的docker如何命令行開(kāi)啟呢?2. 為什么我ping不通我的docker容器呢???3. Docker for Mac 創(chuàng)建的dnsmasq容器連不上/不工作的問(wèn)題4. docker容器呢SSH為什么連不通呢?5. nignx - docker內(nèi)nginx 80端口被占用6. 關(guān)docker hub上有些鏡像的tag被標(biāo)記““This image has vulnerabilities””7. angular.js使用$resource服務(wù)把數(shù)據(jù)存入mongodb的問(wèn)題。8. docker gitlab 如何git clone?9. docker 下面創(chuàng)建的IMAGE 他們的 ID 一樣?這個(gè)是怎么回事????10. docker-compose 為何找不到配置文件?

網(wǎng)公網(wǎng)安備