该文章或问题已被删除

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 

需要了解更多储存方式可以 详细离线储存介绍

点赞 0      收藏 0

0 个评论

正在加载...

这里空空如也,快来补一刀!

加载更多

回答问题或评论文章请先 或者 注册