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 相关文章推荐
Gird事件机制初级读本
Mar 10 Javascript
javascript 当前日期转化为中文的实现代码
May 13 Javascript
JavaScript中逗号运算符介绍及使用示例
Mar 13 Javascript
javascript实现dom动态创建省市纵向列表菜单的方法
May 14 Javascript
jQuery实现标题有打字效果的焦点图代码
Nov 16 Javascript
Javascript中获取浏览器类型和操作系统版本等客户端信息常用代码
Jun 28 Javascript
分析JavaScript数组操作难点
Dec 18 Javascript
微信小程序实现签到功能
Oct 31 Javascript
简单学习5种处理Vue.js异常的方法
Jun 17 Javascript
微信小程序实现多选框全选与反全选及购物车中删除选中的商品功能
Dec 17 Javascript
详解JavaScript中精度失准问题及解决方法
Feb 04 Javascript
深入理解webpack process.env.NODE_ENV配置
Feb 23 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
第1次亲密接触PHP5(2)
2006/10/09 PHP
如何将数据从文本导入到mysql
2006/10/09 PHP
Joomla语言翻译类Jtext用法分析
2016/05/05 PHP
JavaScript 图片预览效果 推荐
2009/12/22 Javascript
JavaScript:Div层拖动效果实例代码
2013/08/06 Javascript
用js实现in_array的方法
2013/11/05 Javascript
JS判断变量是否为空判断是否null
2014/07/25 Javascript
js实现九宫格图片半透明渐显特效的方法
2015/02/16 Javascript
nodejs开发微博实例
2015/03/25 NodeJs
js带前后翻页的图片切换效果代码分享
2015/09/08 Javascript
jQuery基于排序功能实现上移、下移的方法
2016/11/26 Javascript
elementui的默认样式修改方法
2018/02/23 Javascript
vue.js通过路由实现经典的三栏布局实例代码
2018/07/08 Javascript
使用pkg打包Node.js应用的方法步骤
2018/10/19 Javascript
原生js拖拽实现图形伸缩效果
2020/02/10 Javascript
Vue的data、computed、watch源码浅谈
2020/04/04 Javascript
jQuery实现简单弹幕制作
2020/12/10 jQuery
跟老齐学Python之复习if语句
2014/10/02 Python
Python tkinter事件高级用法实例
2018/01/31 Python
Python爬虫包BeautifulSoup简介与安装(一)
2018/06/17 Python
Python基于sklearn库的分类算法简单应用示例
2018/07/09 Python
python3利用tcp实现文件夹远程传输
2018/07/28 Python
python中dict字典的查询键值对 遍历 排序 创建 访问 更新 删除基础操作方法
2018/09/13 Python
python实现Flappy Bird源码
2018/12/24 Python
Django自定义用户登录认证示例代码
2019/06/30 Python
python爬虫 urllib模块反爬虫机制UA详解
2019/08/20 Python
Python unittest 自动识别并执行测试用例方式
2020/03/09 Python
Python Web项目Cherrypy使用方法镜像
2020/11/05 Python
HTML5声音录制/播放功能的实现代码
2018/05/03 HTML / CSS
澳大利亚最好的厨具店:Kitchen Warehouse
2018/03/13 全球购物
高一学生期末评语
2014/04/25 职场文书
工作失误检讨书(经典集锦版)
2014/10/17 职场文书
毕业纪念册寄语大全
2015/02/26 职场文书
立春观后感
2015/06/18 职场文书
干货:如何写好工作总结报告!
2019/05/10 职场文书
Django路由层如何获取正确的url
2021/07/15 Python