Javascript操纵Cookie实现购物车程序

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

    this.name =name;
    this.value=value;
  }
  
  //##私有方法列表##########################################################
  //
  //  getTypePoint(typeName);        //得到购物车里类别数组里的下标
  //  getProPoint(typeName,proName);    //得到购物车里类别下的产品下标
  //  saveCookie()            //以特定的形式存储此购物车的Cookie
  //
  //########################################################################
  
  /**
  @desc 得到购物车里类别数组里的下标,找到的话返回下标,否则返回 -1
  @return int
  */
  this.getTypePoint=function(typeName){
    var isok=false;
    var i=0;
    for(;i<this.carDatas.length;i++){
      if(this.carDatas[i].name==typeName){
        isok=true;      //找到位置
        break;
      }
    }
    if(isok)  return i;
    else    return -1;
  }
  
  /**
  @desc 得到购物车里类别下的产品下标,找到返回下标,否则返回 -1
  @return int
  */
  this.getProPoint=function(typeId,proName){
    var isok=false;
    var j = 0;
    var tempProObj=this.carDatas[typeId].value;
    for(;j<tempProObj.length;j++){
      if(tempProObj[j].name==proName){
        isok=true;
        break;  
      }
    }
    if(isok)  return j;
    else    return -1;
  }
  
  /**
  @desc 存储生成的Cookie字符串
  @return void
  */
  this.saveCookie=function(){
    var outStr='';
    for( i=0; i<this.carDatas.length; i++ ){
      var typeName =this.carDatas[i].name;
      var typeValue=this.carDatas[i].value;
      var proOutStr='';
      for( j=0; j<typeValue.length; j++ ){
        if ( j==0 )  proOutStr = typeValue[j].name + ':' + typeValue[j].value;
        else    proOutStr += '|' + typeValue[j].name + ':' + typeValue[j].value;
      }
      if ( i==0 )  outStr = typeName + '#' + proOutStr;
      else    outStr += ',' + typeName + '#' + proOutStr;