一、如何获取localStorage的剩余容量
在H5大行其道的今天,localStorage(本地存储)对每一个前断攻城师来说都不太陌生。同时localStorage也给我们带来了极大的便利,不用于cookies的小家子气,localStorage的存储量还是很客观的。
由于浏览器的差异性,导致我们需要对localStorage中的内容做出一部分取舍。而根据目前的市场上浏览器对loaclStorage的兼容性来看,最佳的大小是2.5M左右。如何得到localStorage的容量大小,大概接触过localStorage都会遇到的这么一个问题。
localStorage 中存储的是字符串,根据这一条件,我们可以通过取出所有的localStorage的内容,而其长度就是大小。具体代码如下:
(function(){
if(!window.localStorage) {
console.log('浏览器不支持localStorage');
}
var size = 0;
for(item in window.localStorage) {
if(window.localStorage.hasOwnProperty(item)) {
size += window.localStorage.getItem(item).length;
}
}
console.log('当前localStorage剩余容量为' + (size / 1024).toFixed(2) + 'KB');
})()
二、如何获取localStorage最大容量
通过上面的分析,其实思路基本是一样的,都是通过字符长度来判断。
(function() {
if(!window.localStorage) {
console.log('当前浏览器不支持localStorage!')
} var test = '0123456789';
var add = function(num) {
num += num;
if(num.length == 10240) {
test = num;
return;
}
add(num);
}
add(test);
var sum = test;
var show = setInterval(function(){
sum += test;
try {
window.localStorage.removeItem('test');
window.localStorage.setItem('test', sum);
console.log(sum.length / 1024 + 'KB');
} catch(e) {
console.log(sum.length / 1024 + 'KB超出最大限制');
clearInterval(show);
}
}, 0.1)
})()
分享到:
相关推荐
localStorage在安卓内内置浏览器中报错解决,最好的解决的方法
在现代Web开发中,`localStorage` 是一种非常重要的本地存储机制,它允许Web应用程序在用户的浏览器上持久化地存储数据。然而,`localStorage` 的支持并非所有浏览器都原生具备,尤其是在较旧版本的IE系列浏览器中。...
浏览器关闭时清空localStorage储存的数据说明需求解决方案及思路 说明 由于不同页面或标签页间无法共享sessionStorage的信息,所以将项目中登录状态存于localStorage中。 需求 需要在用户关闭浏览器时,将...
Backbone LocalStorage 同步适配器用于将模型和集合持久化到浏览器 LocalStorage 的骨干同步功能适配器。 基于。 修改: 转换为 Node 兼容模块以供 Browserify/Webpack 使用。 没有依赖项(主干或下划线)。 您可以...
1. 本工具全面支持Chrome, IE, FireFox, Opera, Safari等浏览器下的缓存文件读取 2. 支持指定文件格式检索查询 3. 支持文件导出 4. 可以查看文件完整信息 5. 支持文件格式打开方式默认选择 6. 可以支持网页检索...
浏览器本机localStorage API的直接替代品,该API在node.js上运行。 完全实现localStorage规范,包括: 接口中的所有方法包括: 长度 setItem(键,值) getItem(key) removeItem(键) 键(n) 清除() ...
与LocalStorage类似,UserData也采用键值对存储,但它没有跨域限制,且存储容量相对较小(约64KB)。 使用UserData的基本步骤包括: 1. 创建一个DOM元素,如`<div>`,并为其设置`userData`属性。 2. 使用`...
在浏览器 localStorage 中存储字符串化数据。 ##安装 通过添加到 bower.json 或手动安装使用 bower 进行安装。 bower install sm-angular-storage ##用法 将 sm.storage.js 添加到您的应用程序并包含 sm....
您不能而且可能甚至根本不想从浏览器本身外部在Window.localStorage浏览器空间中读取/写入数据。 入门 正在安装 首先,您可能想深入了解的。 想要更多,看看。 游戏结束后,只需将其添加到您的项目中即可。 NuGet...
其中,`localStorage`是一种持久化的本地存储技术,它将数据保存在用户的浏览器上,即使关闭浏览器或计算机重启后,这些数据仍然存在。`localStorage`的最大存储量约为5MB,适用于保存应用级别的数据。 在本篇文档...
因为cookie在跨域的情况下,浏览器根本不允许互相访问的限制,为了突破这个限制,所以有了以下这个实现方案,使用postmessage和localstorage进行数据跨域共享。 原理比较简单,但是遇到的坑也不少,这里梳理一下,做...
在Vue.js应用中,有时我们需要在用户关闭浏览器窗口时自动清空存储在localStorage中的数据,以确保用户下一次访问时获得一个干净的环境。本文将详细介绍如何在Vue中实现这一功能,无论是对于单页面应用程序(SPA)...
localstorage-ponyfill用于浏览器和Node.js的通用LocalStorage ponyfill库。 安装使用npm安装:npm install localstorage-ponyfill用法自动(浏览器或Node.js)自动localstorage-ponyfill用于浏览器和Node.js的通用...
localStorage是Web Storage API的一部分,它提供了一种在客户端浏览器存储数据的方式,即使浏览器关闭后数据也不会消失,且存储的数据是持久的。localStorage只存储字符串,因此在使用之前需要将数据转换为字符串...
这是一个基本的 localStorage 主干缓存。 这个模块是用 UMD(通用模块定义)模式编写的,供 AMD 和非 amd 应用程序使用。 此实现依赖于以下库: 主干 ( ) jQuery ( ) jQuery 商店 ( ) 用法 方法 : setEncoder...
3. localStorage在浏览器的隐私模式(Incognito或InPrivate模式)下不可读取。 4. 存储大量数据可能会消耗内存,导致页面加载变慢。 5. 不能被爬虫抓取到,对于搜索引擎优化(SEO)方面可能有影响。 ### 浏览器支持...
在Vue.js开发中,我们经常需要与浏览器的本地存储机制如localStorage进行交互,用于保存用户数据或应用状态。为了提高代码的可维护性和复用性,开发者会进行二次封装,创建一个专门处理localStorage操作的工具模块。...
LocalStorage的最大存储容量通常为5MB,具体取决于浏览器。它非常适合用来存储用户偏好设置、游戏进度或者页面状态等非结构化的数据。LocalStorage提供了`localStorage.getItem(key)`用于获取值,`localStorage....