今天写了一个购物车,由于购物车内容是保存在 cookie中 所以不想浪费服务器资源做cookie的操作 故在前端封装了一些对象来处理购物车,由于cookie的数据结构的设计是一个json格式 使用 账号作为 key 具体如下
loginName=[{"cart":JsonValue,"set":JsonValue,"other":JsonValue....}] ;
故在获取数据时有一个问题,代码如下
function CookieObj(){
}
CookieObj.prototype.getObj(key){
if(key == "cart"){
}
if(key == "set"){
}
...
}
这里涉及到json 的数据结构
其实json有两种构成方式 数组与键值对
[{key1=value,key2=value},{key1=value,key2=value}] 数组
{key1=value,key2=value,key3=value} 键值对
应该把cookie的数据结构设计成键值对的形式 如下:
loginName={"cart":JsonValue,"set":JsonValue,"other":JsonValue....};
这样的话js代码就能写成通用处理的了
function CookieObj(name){
this.data = document.cookie;
this.name;
{
this.name = name;
}
}
CookieObj.prototype.getObj(key){
return JSON.parse(this.data)[key];
...
}
记之以留备。