在下面的片段中。
是否所有本地存储都从磁盘拉到变量缓存中?
(function(){
var publik = {},
cache = localStorage;
publik.get = function(){}; // getter
publik.set = function(){}; // setter
return publik;
})()
是/否以及为什么。
在下面的片段中。
是否所有本地存储都从磁盘拉到变量缓存中?
(function(){
var publik = {},
cache = localStorage;
publik.get = function(){}; // getter
publik.set = function(){}; // setter
return publik;
})()
是/否以及为什么。
您在变量中存储的是指向 localStorage 对象的指针,该对象不“包含”磁盘数据,它会在您请求时提供给您。
所以不,它不会将磁盘数据拉入内存
更新:
如果要缓存本地存储,可以对其进行交互并逐个请求每个键
for (var key in localStorage)
cache[key] = localStorage[key];
在这里,您询问每个密钥的本地存储并读取它。
不。
cache 现在引用 localStorage 对象。这个对象也引用了它的属性。您不是在对对象进行“克隆”,而只是告诉缓存引用它。