APP 本地离线储存数据
APP 储存数据,当我们开发APP时,需要保存用户登录信息,或把输入的内容保存在本地APP上时,此时我们就要使用到储存数据的方法。
这里讲下常用的两种储存数据方法:
第一种: localStorage ,是HTML5 里浏览器自带的储存数据方法
优点:读取数据快,浏览器自带,可以在APP里不同的webview页面访问,没有时间限制的数据存储,只要不删除,永久保存,除非是手机清除掉
缺点:储存大小有限制,只能存少于5M内容,因各个浏览器不同有所不同,只能储存字符串,不能存对象, 不能跨域访问数据
使用方式
var stoage=localStorage; //实例一个储存对象
stoage.setItem("name","菲林"); //以键值对的方式,存一个值
var name= stoage.getItems("name"); //获得方键的值
if(stoage.getItems("name")) //删除前判断下该键是否存在,如果存在则删除
{
stoage.removeItem("name"); //删除一个键值对
}
stoage.clear(); //这个方法, 删除所有储存数据
//假如要储存一个数组或一个JSON 数据,可以使用JSON.stringify 方法把数组或JSON 转为字符串,再储存
var data=["01","02","03"];
stoage.setItem("data",SON.stringify(data));
//要获取数据时,再通过 JSON.parse() 方法转为数组或JSON
var data=stoage.getItems("data");
data=JSON.parse(data); //转为数组或JSON
遍历所有 localStorage 储存的数据
var stoage=localStorage;
var length=stoage.length; //获得目前有多少个储存数据
for(var i=0;i<length;i++)
{
var key=stoage.key(i);
console.log('键:'+key); //打印键
var val=stoage.getItem(key);
console.log('值:'+val); //打印值
}
第二种储存的方法 plus.storage , 是把原生APP储存的方式封装成JS 调用,只能在HTML5+环境使用
优点:储存数据无大小限制,可以跨域访问,像第三方网页在APP里也可以访问 plus.storage ,储存时间是永久,除非是手机清除掉
缺点:读取数据时,比 localStorage 慢些
使用方式与 localStorage 与相似
var storage=plus.storage; //实例一个storage 对象
storage.setItem("name","APP"); //储存数据
var name=storage.getItem("name"); //获得数据
if(storage.getItem("name")) //删除前判断下该键是否存在,如果存在则删除
{
stoage.removeItem("name"); //删除一个键值对
}
stoage.clear(); //这个方法, 删除所有储存数据
//要储存一个数组或一个JSON 数据,可以使用JSON.stringify 方法把数组或JSON 转为字符串,再储存
var data=["01","02","03"];
stoage.setItem("data",SON.stringify(data));
//要获取数据时,再通过 JSON.parse() 方法转为数组或JSON
var data=stoage.getItems("data");
data=JSON.parse(data); //转为数组或JSON
遍历所有 plus.storage 储存的数据
var storage=plus.storage;
var length=stoage.getLength(); //获得目前有多少个储存数据
for(var i=0;i<length;i++)
{
var key=stoage.key(i);
console.log('键:'+key); //打印键
var val=stoage.getItem(key);
console.log('值:'+val); //打印值
}
总结:如果只是储存一些用户信息,没有大里数据储存需求,推荐使用:localStorage 效率比较高
如果你的APP, 需要储存大量信息在本地时,这时可以使用 plus.storage
需要了解更多储存方式可以 详细离线储存介绍
加载更多