h5 本地存储

Storage模块管理应用本地数据存储区,用于应用数据的保存和读取。应用本地数据与localStorage、sessionStorage的区别在于数据有效域不同,前者可在应用内跨域操作,数据存储期是持久化的,并且没有容量限制。通过plus.storage可获取应用本地数据管理对象。
方法:
• getLength: 获取应用存储区中保存的键值对的个数
• getItem: 通过键(key)检索获取应用存储的值
• setItem: 修改或添加键值(key-value)对数据到应用数据存储中
• removeItem: 通过key值删除键值对存储的数据
• clear: 清除应用所有的键值对存储数据
• key: 获取键值对中指定索引值的key值
权限:
5+功能模块(permissions)

{
// ...
"permissions":{
	// ...
	"Storage": {
		"description": "本地存储,访问应用本地存储数据"
	}
}
}
			
getLength
获取应用存储区中保存的键值对的个数

var foo = plus.storage.getLength();

参数:

返回值:
Number : 键值对的个数
示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Storage Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
document.addEventListener("plusready",plusReady,false);
// Get storage item length
function storageCount() {
	return plus.storage.getLength();
}
	</script>
	</head>
	<body>
		获取应用存储区中保存的键值对的个数<br/>
		<button onclick="storageCount()">Count</button>
	</body>
</html>

getItem
通过键(key)检索获取应用存储的值

var foo = plus.storage.getItem(key);

参数:
• key: ( DOMString ) 必选
存储的键值
返回值:
DOMString : 键(key)对应应用存储的值,如果没有保存则返回null。
示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Storage Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
document.addEventListener("plusready",plusReady,false);
// Get storage item value
function getStorage() {
	return plus.storage.getItem("test");
}
	</script>
	</head>
	<body>
		获取应用存储区中保存的键值对的个数<br/>
		<button onclick="alert(getStorage())">Get item(test)</button>
	</body>
</html>

setItem
修改或添加键值(key-value)对数据到应用数据存储中

void plus.storage.setItem(key, value);

说明:
如果设置的键在应用数据存储中已经存在,更新存储的键值。 存储的键和值没有容量限制,但过多的数据量会导致效率降低,建议单个键值数据不要超过10Kb。
参数:
• key: ( DOMString ) 必选
存储的键值
• value: ( DOMString ) 必选
存储的内容
返回值:
void : 无
示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Storage Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
document.addEventListener("plusready",plusReady,false);
// Remove storage item
function setStorage() {
	plus.storage.setItem("test","test with hbuilder!");
}
	</script>
	</head>
	<body>
		修改或添加键值(key-value)对数据到应用数据存储中<br/>
		<button onclick="setStorage()">Set item(test)</button>
	</body>
</html>

removeItem
通过key值删除键值对存储的数据

void plus.storage.removeItem(key);

参数:
• key: ( DOMString ) 必选
存储的键值
返回值:
void : 无
示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Storage Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
document.addEventListener("plusready",plusReady,false);
// Remove storage item
function removeStorage() {
	plus.storage.removeItem("test");
}
	</script>
	</head>
	<body>
		清除应用所有的键值对存储数据<br/>
		<button onclick="removeStorage()">Remove item(test)</button>
	</body>
</html>
				
clear
清除应用所有的键值对存储数据

void plus.storage.clear();

参数:

返回值:
void : 无
示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Storage Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
document.addEventListener("plusready",plusReady,false);
// Clear storage data
function clearStorage() {
	plus.storage.clear();
}
	</script>
	</head>
	<body>
		清除应用所有的键值对存储数据<br/>
		<button onclick="clearStorage()">Clear</button>
	</body>
</html>

key
获取键值对中指定索引值的key值

var foo = plus.storage.key(index);

参数:
• index: ( Number ) 必选 存储键值的索引
返回值:
void : 无
示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Storage Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
document.addEventListener("plusready",plusReady,false);
// Get value by index
function enumValueByIndex() {
	var keyNames=[];
	var values=[];
	var numKeys=plus.storage.getLength();
	for(var i=0; i<numKeys; i++) {
		keyNames[i] = plus.storage.key(i);
		values[i] = plus.storage.getItem(keyNames[i]);
	}
}
	</script>
	</head>
	<body>
		获取键值对中指定索引值的key值<br/>
		<button onclick="enumValueByIndex()">Enum</button>
	</body>
</html>
		
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

X W F

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值