用函数缓存 阶乘函数 提高运行速度

用函数缓存 阶乘函数 提高性能
缓存函数不常用
但是思想还是要掌握的
写代码没什么比思想的训练更重要的了

 function Factorial(n){   //阶乘函数

     if(n==1||n==0){
         return 1
     }

     return n*Factorial(n-1)
 }





function cache(fn){  //缓存函数
   var result={}
   return function(){
       var this_=this
       var  arg=Array.prototype.join.call(arguments,",")


       return result[arg]=result[arg]||fn.apply(this_,arguments)


   }



}
var result=cache(Factorial)
console.log(result(6))






最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容