码迷,mamicode.com
首页 > 其他好文 > 详细

缓存函数memorize

时间:2017-09-23 00:06:14      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:col   直接   log   function   else   code   调用   nts   style   

 1 function mulity(x){
 2             return x*x;
 3         }
 4     function memorize(f){
 5             var cache  = {};
 6             var key = arguments.length + Array.prototype.join.call(arguments,",");//参数长度和参数作为属性
 7             if(key in cache)
 8                 return cache[key];
 9             else
10                 return cache[key] = f.apply(this,arguments);
11         };
12         
13     function Test(){
14             var t = memorize(mulity);
15                 var k =t(6);//第一次是直接算
16                 var k2 =t(6);//第二次是调用缓存
17                 alert(k2);
18         }

缓存函数是把计算的结果,存在函数中,当再次调用的时候就可以直接调用,这种方法就是用空间来换取时间

缓存函数memorize

标签:col   直接   log   function   else   code   调用   nts   style   

原文地址:http://www.cnblogs.com/czy960731/p/7577451.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!