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);
});
});
网友评论