json格式的javascript对象用法分析


Posted in Javascript onJuly 04, 2016

本文实例分析了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

PS:这里再为大家推荐几款json在线工具,相信大家在今后的开发中可以用得到:

在线JSON代码检验、检验、美化、格式化工具:
http://tools.3water.com/code/json

JSON在线格式化工具:
http://tools.3water.com/code/jsonformat

在线XML/JSON互相转换工具:
http://tools.3water.com/code/xmljson

json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.3water.com/code/jsoncodeformat

C语言风格/HTML/CSS/json代码格式化美化工具:
http://tools.3water.com/code/ccode_html_css_json

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
form中限制文本字节数js代码
Jun 10 Javascript
javascript 建设银行登陆键盘
Jun 10 Javascript
javascript 随机展示头像实现代码
Dec 06 Javascript
JavaScript获取多个数组的交集简单实例
Nov 11 Javascript
JavaScript跨平台的开源框架NativeScript
Mar 24 Javascript
js表单元素checked、radio被选中的几种方法(详解)
Aug 22 Javascript
Angular在一个页面中使用两个ng-app的方法
Feb 20 Javascript
vue实现提示保存后退出的方法
Mar 15 Javascript
浅谈js获取ModelAndView值的问题
Mar 28 Javascript
Angular网络请求的封装方法
May 22 Javascript
Vue项目查看当前使用的elementUI版本的方法
Sep 27 Javascript
详解JavaScript中分解数字的三种方法
Jan 05 Javascript
jQuery简单动画变换效果实例分析
Jul 04 #Javascript
Node.js Streams文件读写操作详解
Jul 04 #Javascript
jQuery文字提示与图片提示效果实现方法
Jul 04 #Javascript
jQuery实现的导航下拉菜单效果
Jul 04 #Javascript
表单中单选框添加选项和移除选项
Jul 04 #Javascript
jQuery实现简单倒计时功能的方法
Jul 04 #Javascript
jquery设置表单元素为不可用的简单代码
Jul 04 #Javascript
You might like
php访问查询mysql数据的三种方法
2006/10/09 PHP
PHP 日期加减的类,很不错
2009/10/10 PHP
批量修改RAR文件注释的php代码
2010/11/20 PHP
基于php split()函数的用法详解
2013/06/05 PHP
解析PHP 5.5 新特性
2013/07/02 PHP
php函数实现判断是否移动端访问
2015/03/03 PHP
php实现基于openssl的加密解密方法
2016/09/30 PHP
thinkPHP框架通过Redis实现增删改查操作的方法详解
2019/05/13 PHP
jquery处理页面弹出层查询数据等待操作实例
2015/03/25 Javascript
完美兼容多浏览器的js判断图片路径代码汇总
2015/04/17 Javascript
Vue实现PC端靠边悬浮球的代码
2020/05/09 Javascript
element日历calendar组件上月、今天、下月、日历块点击事件及模板源码
2020/07/27 Javascript
Python实现的彩票机选器实例
2015/06/17 Python
Python操作Access数据库基本步骤分析
2016/09/19 Python
Python新手们容易犯的几个错误总结
2017/04/01 Python
疯狂上涨的Python 开发者应从2.x还是3.x着手?
2017/11/16 Python
Python+树莓派+YOLO打造一款人工智能照相机
2018/01/02 Python
Django使用Celery加redis执行异步任务的实例内容
2020/02/20 Python
python GUI库图形界面开发之PyQt5单选按钮控件QRadioButton详细使用方法与实例
2020/02/28 Python
Selenium启动Chrome时配置选项详解
2020/03/18 Python
使用python实现CGI环境搭建过程解析
2020/04/28 Python
Python通过Pillow实现图片对比
2020/04/29 Python
python如何构建mock接口服务
2021/01/28 Python
Jacadi Paris英国官网:法国童装品牌
2019/08/09 全球购物
LACOSTE波兰官网:Polo衫、服装和鞋类
2020/09/29 全球购物
北京振戎融通Java面试题
2015/09/03 面试题
医生进修自我鉴定
2014/01/19 职场文书
学校安全生产承诺书
2014/05/23 职场文书
无毒社区工作方案
2014/05/23 职场文书
理发店策划方案
2014/06/05 职场文书
工地安全标语
2014/06/07 职场文书
离婚案件原告代理词
2015/05/23 职场文书
素质教育培训心得体会
2016/01/19 职场文书
《认识钟表》教学反思
2016/02/16 职场文书
《和时间赛跑》读后感3篇
2019/12/16 职场文书
Redis基于Bitmap实现用户签到功能
2021/06/20 Redis