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 相关文章推荐
jQuery获取css z-index在各种浏览器中的返回值
Sep 15 Javascript
formValidator3.3的ajaxValidator一些异常分析
Jul 12 Javascript
JS辨别访问浏览器判断是android还是ios系统
Aug 19 Javascript
js基于面向对象实现网页TAB选项卡菜单效果代码
Sep 09 Javascript
JS基于正则表达式实现的密码强度验证功能示例
Sep 21 Javascript
Vue父子组件双向绑定传值的实现方法
Jul 31 Javascript
详解vue中localStorage的使用方法
Nov 22 Javascript
JS/HTML5游戏常用算法之追踪算法实例详解
Dec 12 Javascript
Angular如何由模板生成DOM树的方法
Dec 23 Javascript
JQuery插件tablesorter表格排序实现过程解析
May 28 jQuery
基于vue实现简易打地鼠游戏
Aug 21 Javascript
详解JavaScript中Arguments对象用途
Aug 30 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
Wordpress php 分页代码
2009/10/21 PHP
PHP动态生成javascript文件的2个例子
2014/04/11 PHP
PHP获取不了React Native Fecth参数的解决办法
2016/08/26 PHP
php7函数,声明,返回值等新特性介绍
2018/05/25 PHP
js获取单选按钮的数据
2006/11/27 Javascript
Ext grid 添加右击菜单
2009/11/26 Javascript
js函数中onmousedown和onclick的区别和联系探讨
2013/05/19 Javascript
鼠标移动到图片名上,显示图片的简单实例
2013/07/14 Javascript
javascript实现分栏显示小技巧附图
2014/10/13 Javascript
js使用心得分享
2015/01/13 Javascript
javascript实现在指定元素中垂直水平居中
2015/09/13 Javascript
jQuery移动页面开发中的触摸事件与虚拟鼠标事件简介
2015/12/03 Javascript
js创建jsonArray传输至后台及后台全面解析
2016/04/11 Javascript
jQuery实现手机版页面翻页效果的简单实例
2016/10/05 Javascript
AngularJS双向绑定和依赖反转实例详解
2017/04/15 Javascript
Vue 进阶教程之v-model详解
2017/05/06 Javascript
Easyui在treegrid添加控件的实现方法
2017/06/23 Javascript
分析javascript中9 个常见错误阻碍你进步
2017/09/18 Javascript
微信小程序异步处理详解
2017/11/10 Javascript
Angular 开发学习之Angular CLI的安装使用
2017/12/31 Javascript
Python装饰器使用示例及实际应用例子
2015/03/06 Python
Python使用metaclass实现Singleton模式的方法
2015/05/05 Python
Python实现优先级队列结构的方法详解
2016/06/02 Python
教你用python3根据关键词爬取百度百科的内容
2016/08/18 Python
python3写爬取B站视频弹幕功能
2017/12/22 Python
tensorflow实现简单逻辑回归
2018/09/07 Python
Python基于paramunittest模块实现excl参数化
2020/04/26 Python
python可以用哪些数据库
2020/06/22 Python
Pandas的Apply函数具体使用
2020/07/21 Python
英国独特家具和家庭用品购物网站:Cuckooland
2020/08/30 全球购物
会计主管岗位职责范文
2013/11/08 职场文书
国际经济贸易专业自荐信
2014/06/13 职场文书
2014年文艺部工作总结
2014/11/17 职场文书
2016年秋季运动会通讯稿
2015/11/25 职场文书
flex弹性布局详解
2022/03/20 HTML / CSS
Docker安装MySql8并远程访问的实现
2022/07/07 Servers