新聞中心
這篇文章主要為大家展示了js如何實(shí)現(xiàn)函數(shù)柯里化,內(nèi)容簡(jiǎn)而易懂,希望大家可以學(xué)習(xí)一下,學(xué)習(xí)完之后肯定會(huì)有收獲的,下面讓小編帶大家一起來(lái)看看吧。
本文實(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
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
分享題目:js如何實(shí)現(xiàn)函數(shù)柯里化-創(chuàng)新互聯(lián)
標(biāo)題URL:http://fisionsoft.com.cn/article/dephoj.html