https://www.cnblogs.com/louby/p/6962707.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
var pageId = 'pageId';
var params = '2name=123&pass=456&static= ';
let map = new Map();
map.set(pageId,params);
var storage = window.localStorage;
//生成json
var myjsonStr = setJson(null,'name','aaa');
console.log(myjsonStr);
if(!storage.hasOwnProperty(pageId)){
var datajson = setJson(null,pageId+'1',params);//保存本次查询的小json
var myjsonStr = setJson(null,pageId,datajson);//放入dataquery的大json中
storage.pageId = myjsonStr;
}else{
var getqeury = JSON.parse(storage.getItem(pageId));//大json
var zquery = JSON.parse(getqeury.pageId)
console.log(zquery); //获取到小json
var count = Object.keys(zquery).length;//获取子小json的个数
console.log(count);//1
if(count >= 5){
//已记录5条,要销毁掉第一个
var delqueryd = deleteJson(JSON.stringify(zquery),pageId+'1');
//重新存入localtion
var myjsonStr = setJson(null,pageId,delqueryd);//放入dataquery的大json中
storage.pageId = myjsonStr;
count--;
}
if(count < 5){
var s = 5-count;
var zquerys = setJson(JSON.stringify(zquery),pageId+(parseInt(count)+1),params);
console.log(zquerys);
//重新存入localtion
var myjsonStr = setJson(null,pageId,zquerys);//放入dataquery的大json中
storage.pageId = myjsonStr;
}
}
//添加或者修改json数据,如果name一样就好覆盖掉
function setJson(jsonStr,name,value)
{
if(!jsonStr)jsonStr="{}";
var jsonObj = JSON.parse(jsonStr);
jsonObj[name] = value;
return JSON.stringify(jsonObj)
}
//删除数据
function deleteJson(jsonStr,name)
{
if(!jsonStr)return null;
var jsonObj = JSON.parse(jsonStr);
delete jsonObj[name];
return JSON.stringify(jsonObj)
}
</script>
</body>
</html>