美文网首页
本地存储

本地存储

作者: 六月太阳花 | 来源:发表于2016-12-29 22:09 被阅读0次

    1、 cookie

    大小4k(珍贵资源)
    有过期时间(默认为session)
    cookie类型:字符串
    会跟随服务器发送
    必须在服务器环境下
    不安全

    function setCookie(name,value,iDay){
        var str = name +'='+value+'; path=/ ';
        if(iDay){
            var oDate = new Date();
            oDate.setDate(oDate.getDate()+iDay);
            str += ';expires='+oDate;
        }
        document.cookie = str;
    }
    function getCookie(name){
        var arr = document.cookie.split('; ');
        for(var i = 0;i < arr.length;i++){
            var arr2 = arr[i].split('=');
            if(name == arr2[0]){
                return arr2[1];
            }
        } 
        return '';
    }
    function removeCookie(name){
        setCookie('name','',-1);
    }
    

    2、localStorage
    大小5M
    没有过期时间
    不会跟随服务器发送
    不用在服务器环境下
    两种写法:

            土
                存值                  localStorage.a=12; 
                获取                  alert(localStorage.a);
                删除                  delete localStorage.a   
            洋气  
                设置                  localStorage.setItem('a',666);
                获取                  localStorage.getItem('a')
                删除                  localStorage.removeItem('a');
                删除全部                    localStorage.clear();
    

    3、webSql ———— 前端数据库
    安全吗? 一点都安全
    大小5M
    1.开启一个数据
    var db=openDatabase(数据库名,数据库版本,数据库描述,数据库申请容量);
    2.开启事务
    事务:原子性 要么成功,要么失败
    3.SQL语句
    CREATE
    INSERT
    SELECT
    eg:

    //创建或打开数据库
    var db=openDatabase('test','1.0.0','play and test',200); 
    //创建表
    db.transaction(function (tx){
        //tx    事务上下文
        tx.executeSql('CREATE table news(user TEXT,pass TEXT)');
    });
    //向表中插入数据
    db.transaction(function (tx){
        //tx    事务上下文
        tx.executeSql('INSERT INTO news VALUES("admin","123")');
        tx.executeSql('INSERT INTO news VALUES("abc","123")');
        tx.executeSql('INSERT INTO news VALUES("qwer","123")');
        tx.executeSql('INSERT INTO news VALUES("ecd","123")');
    });
    //查询表
    db.transaction(function (tx){ 
        tx.executeSql('SELECT * FROM news',[],function (tx,result){
            document.write('<ul>');
            for(var i=0; i<result.rows.length; i++){
                document.write('<li><strong>'+result.rows[i].user+'</strong><span>'+result.rows[i].pass+'</span></li>');
            }
            document.write('</ul>');
        },function (tx,err){
            console.log(err);
        });
    });
    

    相关文章

      网友评论

          本文标题:本地存储

          本文链接:https://www.haomeiwen.com/subject/fzspvttx.html