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 相关文章推荐
不用AJAX和IFRAME,说说真正意义上的ASP+JS无刷新技术
Sep 25 Javascript
jquery1.5.1中根据元素ID获取元素对象的代码
Apr 02 Javascript
详解javascript new的运行机制
Jan 26 Javascript
js 单引号替换成双引号,双引号替换成单引号的实现方法
Feb 16 Javascript
详解vue.js全局组件和局部组件
Apr 10 Javascript
详解JS中的attribute属性
Apr 25 Javascript
vue+mockjs模拟数据实现前后端分离开发的实例代码
Aug 08 Javascript
详解Vue2 SSR 缓存 Api 数据
Nov 20 Javascript
bootstrap select下拉搜索插件使用方法详解
Nov 23 Javascript
JS遍历DOM文档树的方法实例详解
Apr 03 Javascript
微信小程序实现列表页的点赞和取消点赞功能
Nov 02 Javascript
详解小程序BackgroundAudioManager踩坑之旅
Dec 08 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获取网卡地址的代码
2008/04/09 PHP
PHP排序之二维数组的按照字母排序实现代码
2011/08/13 PHP
PHP容易忘记的知识点分享
2013/04/30 PHP
在win系统安装配置 Memcached for PHP 5.3 图文教程
2015/03/03 PHP
详细解读PHP中接口的应用
2015/08/12 PHP
网页里控制图片大小的相关代码
2006/06/25 Javascript
js left,right,mid函数
2008/06/10 Javascript
javascript xml为数据源的下拉框控件
2009/07/07 Javascript
jquery放大镜效果超漂亮噢
2013/11/15 Javascript
使用JSLint提高JS代码质量方法分享
2013/12/16 Javascript
js实现继承的5种方式
2015/12/01 Javascript
jquery form表单获取内容以及绑定数据
2016/02/24 Javascript
微信小程序商城项目之淘宝分类入口(2)
2017/04/17 Javascript
requirejs + vue 项目搭建详解
2017/06/16 Javascript
js实现通过开始结束控制的计时器
2019/02/25 Javascript
vue实现百度语音合成的实例讲解
2019/10/14 Javascript
JS函数进阶之prototy用法实例分析
2020/01/15 Javascript
ES6 proxy和reflect的使用方法与应用实例分析
2020/02/15 Javascript
uni-app使用微信小程序云函数的步骤示例
2020/05/22 Javascript
vscode自定义vue模板的实现
2021/01/27 Vue.js
python3简单实现微信爬虫
2015/04/09 Python
Python获取系统默认字符编码的方法
2015/06/04 Python
Python计算字符宽度的方法
2016/06/14 Python
python实现壁纸批量下载代码实例
2018/01/25 Python
python实现机器学习之多元线性回归
2018/09/06 Python
Linux 修改Python命令的方法示例
2018/12/03 Python
俄罗斯三星品牌商店:GalaxyStore
2020/11/04 全球购物
幼师专业毕业生自荐信
2013/09/29 职场文书
中文系学生自荐信范文
2013/11/13 职场文书
研发工程师的岗位职责
2013/11/18 职场文书
销售副总经理岗位职责
2013/12/11 职场文书
建筑经济管理专业求职信分享
2014/01/06 职场文书
领导干部培训感言
2014/01/23 职场文书
迎国庆演讲稿
2014/09/05 职场文书
升学宴学生致辞
2015/09/29 职场文书
JavaScript offset实现鼠标坐标获取和窗口内模块拖动
2021/05/30 Javascript