JavaScript如何使用遞歸定義階乘函數(shù),相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。
創(chuàng)新互聯(lián)從2013年開(kāi)始,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元鞍山做網(wǎng)站,已為上家服務(wù),為鞍山各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:028-86922220
如果函數(shù)有名字,而且名字以后也不會(huì)變,那么定義就沒(méi)問(wèn)題了。但問(wèn)題是函數(shù)的執(zhí)行與函數(shù)名factorial緊密耦合。
1、消除緊密耦合的現(xiàn)象,可以使用arguments.callee。
2、在重寫(xiě)的factorial()函數(shù)中,函數(shù)名稱factorial不再被引用。使用的名稱可以保證遞歸調(diào)用的正常完成。
實(shí)例
var trueFactorial = factorial; factorial = function(){ return 0; }; alert(trueFactorial(5)); //120 alert(factorial(5)); //0
看完上述內(nèi)容,你們掌握J(rèn)avaScript如何使用遞歸定義階乘函數(shù)的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!