本地存储

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('
    '); for(var i=0; i'+result.rows[i].user+''+result.rows[i].pass+''); } document.write('
'); },function (tx,err){ console.log(err); }); });

你可能感兴趣的:(本地存储)