這篇文章主要為大家展示了js如何實(shí)現(xiàn)函數(shù)柯里化,內(nèi)容簡(jiǎn)而易懂,希望大家可以學(xué)習(xí)一下,學(xué)習(xí)完之后肯定會(huì)有收獲的,下面讓小編帶大家一起來(lái)看看吧。
創(chuàng)新互聯(lián)專注于企業(yè)全網(wǎng)營(yíng)銷推廣、網(wǎng)站重做改版、任縣網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5頁(yè)面制作、商城建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為任縣等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
本文實(shí)例講述了js函數(shù)柯里化的方法和作用。分享給大家供大家參考,具體如下:
函數(shù)柯里化的方法:
1,利用數(shù)組的reduce方法可實(shí)現(xiàn)柯里化,具體參見我的另外一篇文章
2,代碼如下
const curry = (fn, ...args) =>{ console.log('args',args) // console.log(fn.length,args.length) return args.length < fn.length // 參數(shù)長(zhǎng)度不足時(shí),重新柯里化該函數(shù),等待接受新參數(shù) ? (...arguments) => { console.log('arguments',arguments) return curry(fn, ...args, ...arguments) } // 參數(shù)長(zhǎng)度滿足時(shí),執(zhí)行函數(shù) : fn(...args); } function sumFn(a, b, c) { return a + b + c; } var sum = curry(sumFn); const one = sum(2) console.log('one:',one.toString()) const two = one(3) console.log('two:',two.toString()) const three = two(5) console.log('three:',three.toString()) //console.log(sum(2)(3)(5));//10 // console.log(sum(2, 3, 5));//10 // console.log(sum(2)(3, 5));//10 // console.log(sum(2, 3)(5));//10
函數(shù)柯里化的主要作用:
以上就是關(guān)于js如何實(shí)現(xiàn)函數(shù)柯里化的內(nèi)容,如果你們有學(xué)習(xí)到知識(shí)或者技能,可以把它分享出去讓更多的人看到。
新聞標(biāo)題:js如何實(shí)現(xiàn)函數(shù)柯里化
地址分享:http://chinadenli.net/article26/gisocg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、網(wǎng)站設(shè)計(jì)、網(wǎng)站改版、網(wǎng)站設(shè)計(jì)公司、做網(wǎng)站、全網(wǎng)營(yíng)銷推廣
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)