您的位置:首页 > Web前端 > HTML5

HTML5+规范:Storage(管理应用本地数据存储区)

2016-07-04 20:03 751 查看
   Storage模块管理应用本地数据存储区,用于应用数据的保存和读取。应用本地数据与localStorage、sessionStorage的区别在于数据有效域不同,前者可在应用内跨域操作,数据存储期是持久化的,并且没有容量限制。通过plus.storage可获取应用本地数据管理对象。

1、方法

1.1、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>

1.2、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>

1.3、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>

1.4、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>


1.5、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>

1.6、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>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: