2013-09-16 34 views
0

我需要在JavaScript中實現一個簡單的緩存來存儲ajax請求的結果。我知道其中一個方法是實現自我記憶功能。但是,JavaScript中是否存在一些通用模式,而不使用任何框架?在JavaScript中實現自我記憶功能是否存在規範模式?

+1

記憶或記憶? – Joe

+0

好問題!這些概念不相同嗎? –

+0

記憶在計算機科學中具有特定的含義,「記憶」是一個更通用的英語單詞,並沒有特定的計算機科學含義。 – Joe

回答

0
var getAjax = (function(params){ 
    var cache = {}; 
    var paramsToURLKey = function(params){ 
     return paramsConvertedToString; // convert params object to string and use it as key for cache 
    }; 
    getAjax = function (params, callback) { 
     var key = paramsToURLKey(params); 
     var result = cache[key]; // try to read previous request results 
     if (!result) { 
      sendRealRequest(params, function(response){ 
       //request callback 
       cache[key] = response; 

       callback(response); 
      }) 
     } 
    } 

})();