Javascript操纵Cookie实现购物车程序

2019-06-03 06:02:56于海丽

  @return bool
  */
  this.addPro=function(typeName,proName,value){
    var typePoint=this.getTypePoint(typeName);      if ( typePoint ==-1 ) return false;    //没有此类别,无法增加,返回假
    var proPoint =this.getProPoint(typePoint,proName);  if ( proPoint != -1 ) return false;    //有此产品了,无法增加重复,返回假
    this.carDatas[typePoint].value.push(new this.proObj(proName,value));  //push到自身数组
    this.saveCookie();  //存入 Cookie
    return true;
  }
  
  /**
  @desc 修改购物车里的产品属性
  @return bool
  */
  this.editPro=function(typeName,proName,value){
    var typePoint=this.getTypePoint(typeName);      if ( typePoint == -1 ) return false;  //没有此类别,无法修改,返回假
    var proPoint =this.getProPoint(typePoint,proName);  if ( proPoint == -1 ) return false;  //没有此产品,无法修改,返回假
    this.carDatas[typePoint].value[proPoint].value=value;              //更新自身 
    this.saveCookie();  //存入 Cookie
    return true;
  }
  
  /**
  @desc 删除一个产品
  @return bool
  */
  this.delPro=function(typeName,proName){
    var typePoint=this.getTypePoint(typeName);      if ( typePoint == -1 ) return false;  //没有此类别,无法删除,返回假
    var proPoint =this.getProPoint(typePoint,proName);  if ( proPoint == -1 ) return false;  //没有此产品,无法删除,返回假
    var pros=this.carDatas[typePoint].value.length;
    this.carDatas[typePoint].value[proPoint] = this.carDatas[typePoint].value[pros-1];  //最后一个产品放置要删除的产品上
    this.carDatas[typePoint].value.pop();
    this.saveCookie();  //存入 Cookie
    return true;
  }
  
  /**
  @desc 删除一个类别
  @return bool
  */
  this.delType=function(typeName){
    var typePoint=this.getTypePoint(typeName);  if ( typePoint == -1 ) return false;  //没有此类别,无法删除,返回假
    var types=this.carDatas.length;
    this.carDatas[typePoint] = this.carDatas[types-1];            //删除类别
    this.carDatas.pop();