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 相关文章推荐
JavaScript之引用类型介绍
Aug 10 Javascript
浅谈JSON和JSONP区别及jQuery的ajax jsonp的使用
Nov 23 Javascript
js实现的后台左侧管理菜单代码
Sep 11 Javascript
JS区分Object与Aarry的六种方法总结
Feb 27 Javascript
Angular.JS中的this指向详解
May 17 Javascript
详解AngularJS之$window窗口对象
Jan 17 Javascript
基于Vue2x的图片预览插件的示例代码
May 14 Javascript
vuex实现及简略解析(小结)
Mar 01 Javascript
微信小程序地图导航功能实现完整源代码附效果图(推荐)
Apr 28 Javascript
jqGrid表格底部汇总、合计行footerrow处理
Aug 21 Javascript
微信小程序点击顶部导航栏切换样式代码实例
Nov 12 Javascript
使用jquery实现轮播图效果
Jan 02 jQuery
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 用session与gd库实现简单验证码生成与验证的类方法
2016/11/15 PHP
php生成无限栏目树
2017/03/16 PHP
php实现基于pdo的事务处理方法示例
2017/07/21 PHP
使用PHPExcel导出Excel表
2018/09/08 PHP
php设计模式之职责链模式定义与用法经典示例
2019/09/19 PHP
laravel Model 执行事务的实现
2019/10/10 PHP
js实现iframe动态调整高度的代码
2008/01/06 Javascript
原生js ActiveXObject获取execl里面的值
2013/11/01 Javascript
当鼠标滑过文本框自动选中输入框内容的JS代码分享
2013/11/26 Javascript
JavaScript实现跨浏览器的添加及删除事件绑定函数实例
2015/08/04 Javascript
jQuery代码实现对话框右上角菜单带关闭×
2016/05/03 Javascript
浅析在javascript中创建对象的各种模式
2016/05/06 Javascript
BootStrap Typeahead自动补全插件实例代码
2016/08/10 Javascript
微信小程序 动画的简单实例
2017/10/12 Javascript
微信小程序实现给嵌套template模板传递数据的方式总结
2017/12/18 Javascript
vue2.0 资源文件assets和static的区别详解
2018/04/08 Javascript
深入浅出理解JavaScript高级定时器原理与用法
2018/08/02 Javascript
vue-cli项目代理proxyTable配置exclude的方法
2018/09/20 Javascript
JavaScript 双向链表操作实例分析【创建、增加、查找、删除等】
2020/04/28 Javascript
[48:48]VGJ.T vs Liquid 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python编程argparse入门浅析
2018/02/07 Python
Python走楼梯问题解决方法示例
2018/07/25 Python
pandas通过索引进行排序的示例
2018/11/16 Python
有关HTML5中背景音乐的自动播放功能
2017/10/16 HTML / CSS
求职简历自荐信范文
2013/10/21 职场文书
师范生个人推荐信
2013/11/29 职场文书
简单租房协议书
2014/04/09 职场文书
《雨点儿》教学反思
2014/04/14 职场文书
感恩小明星事迹材料
2014/05/23 职场文书
我的中国梦演讲稿初中篇
2014/08/19 职场文书
2014年小学美术工作总结
2014/12/20 职场文书
辞职信格式模板
2015/02/27 职场文书
高二化学教学反思
2016/02/22 职场文书
微信小程序和php的登录实现
2021/04/01 PHP
Python爬虫:从m3u8文件里提取小视频的正确操作
2021/05/14 Python
Win11运行cmd提示“请求的操作需要提升”的两种解决方法
2022/07/07 数码科技