json格式的javascript对象用法分析

格式:

objectName = {
  property1:value1,
  property2:value2,
  …,
  propertyN:valueN
}
property是对象的属性 ,value则是对象的值,值可以是字符串、数字或对象三者之一
例一: 值为字符串和数字
var user={
  name: "user1" ,
  age:18
};
例二:值为字符串和对象
var user={ //user本身是一个对象
  name: "user1" ,
  job:{ //job也是一个对象
   salary:3000,
   title:programmer
  }
}
例三:值还可以为函数
var user={ //user本身为一个对象
  name: "user1" ,
  age:18,
  getName: function (){ //getName为方法
   return this .name;
  }
}
以下ZPVisitor类的定义格式在实际企业项目中经常被使用:
var ZPVisitor = {
  init : function (){
   var url = ZPConstant.AJAX_SERVER + "&a=hello" + "&sid=" + Math.random();
   $.getJSON(url, function (result){ // #TODO 跨域请求?
    if (result.done) {
     var logininfo = result.data.name + " 您好!" ;
     if (!result.data.login) {
     logininfo += " <a href=\"" + ZPConstant.MYZP_DOMAIN + "index.php?c=member&a=login\">登录</a>/<a href=\"" +
     ZPConstant.MYZP_DOMAIN + "index.php?c=member&a=regist\">注册</a>" ;
     } else {
     logininfo += " <a href=\"" + ZPConstant.MYZP_DOMAIN + "index.php?c=member&a=logout\">注销</a>" ;
     }
     $( "#login-info" ).html(logininfo);
    } else {
     popAlert(result.msg);
    }
   }); //结束getJSON
  }, //结束init方法
  // 收藏商品
  collect : function (pid) {
    var pid = parseInt(pid);
    if (isNaN(pid)) return false ;
    var url = ZPConstant.AJAX_SERVER + "&a=collect&pid=" + pid + "&sid=" + Math.random();
    $.getJSON(url, function (result){
     if (result.done){
      popAlert(result.msg);
     } else {
      popAlert(result.msg);
     }
    }); //结束getJSON方法
  }, // 结束collect方法
  // 浏览历史
  vHistory :{
   get: function (callback){
    var items_str = getCookie(ZPConstant.VIEW_HISTORY_CKNAME);
    if (items_str == null ) return ;
    var items = items_str.split( "," ).reverse().join( "," ),
    url = ZPConstant.AJAX_SERVER + "&a=viewHistory" + "&items=" + items + "&sid=" + Math.random();
    // TODO 向服务端请求数据
    $.getJSON(url, function (response){
      if (response.done){
       callback(response.data,items);
     } else {
       return false ;
     }
    }); //结束getJSON方法
   }, //结束get方法
   add: function (pid){
    var pid = parseInt(pid);
    if (isNaN(pid)) return ;
    var cookieStr = getCookie(ZPConstant.VIEW_HISTORY_CKNAME);
    if (cookieStr) {
     var pids = cookieStr.split( "," ),_tempPids = [];
     for ( var i=0;i<pids.length;i++){
      if (pids[i] != pid) { // 如果已经存在,则移除之前写入的数据
       _tempPids.push(parseInt(pids[i]));
      }
     }
     _tempPids.push(pid); // 将新数据放到数组最后
     setCookie(ZPConstant.VIEW_HISTORY_CKNAME, _tempPids.reverse().slice(0,5).reverse().join( "," ));
    } else {
     setCookie(ZPConstant.VIEW_HISTORY_CKNAME, pid);
    }
   }, // 结束add方法
   clear: function (){
     setCookie(ZPConstant.VIEW_HISTORY_CKNAME, '' , -100);
   }
  }, //结束vHistory
  // 购物车已删除的商品记录
  dropHistory: function (spid){
   var cookieStr = getCookie(ZPConstant.CARTDEL_CKNAME);
   if (cookieStr){
    var idsDel = cookieStr.split( "," );
    for ( var i=0;i<idsDel.length;i++){
      idsDel[i] = parseInt(idsDel[i]);
    }
    if ($.inArray(spid,idsDel) == -1){
     idsDel.push(spid);
     setCookie(ZPConstant.CARTDEL_CKNAME, idsDel.join( "," ));
    }
   } else {
    setCookie(ZPConstant.CARTDEL_CKNAME, spid);
   }
  } //结束dropHistory
} //结束ZPVisitor

转载于:https://www.cnblogs.com/sjqq/p/6363478.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值