首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何找到localStorage的大小

如何找到localStorage的大小
EN

Stack Overflow用户
提问于 2010-12-09 03:43:45
回答 13查看 95.8K关注 0票数 145

我目前正在开发一个网站,它将使用html5的localStorage。我已经阅读了所有关于不同浏览器的大小限制。但是,我还没有看到任何关于如何找出localStorage实例当前大小的内容。This question似乎表明JavaScript没有内置的方式来显示给定变量的大小。localStorage有没有我没见过的内存大小属性?有没有什么简单的方法可以解决我错过的这个问题?

我的网站旨在允许用户在“离线”模式下输入信息,因此能够在存储空间几乎已满时给他们一个警告是非常重要的。

EN

Stack Overflow用户

发布于 2014-03-11 19:04:49

您可以通过以下方法计算本地存储空间:

代码语言:javascript
运行
复制
function sizeofAllStorage(){  // provide the size in bytes of the data currently stored
  var size = 0;
  for (i=0; i<=localStorage.length-1; i++)  
  {  
  key = localStorage.key(i);  
  size += lengthInUtf8Bytes(localStorage.getItem(key));
  }  
  return size;
}

function lengthInUtf8Bytes(str) {
  // Matches only the 10.. bytes that are non-initial characters in a multi-byte sequence.
  var m = encodeURIComponent(str).match(/%[89ABab]/g);
  return str.length + (m ? m.length : 0);
}

console.log(sizeofAllStorage());

最后,以字节为单位的大小将被记录在浏览器中。

票数 7
EN
查看全部 13 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4391575

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档