本文实例分析了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.VeVB.COm/code/json
JSON在线格式化工具:
http://tools.VeVB.COm/code/jsonformat
在线XML/JSON互相转换工具:
http://tools.VeVB.COm/code/xmljson
json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.VeVB.COm/code/jsoncodeformat
C语言风格/HTML/CSS/json代码格式化美化工具:
http://tools.VeVB.COm/code/ccode_html_css_json
更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript中json操作技巧总结》、《JavaScript切换特效与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript动画特效与技巧汇总》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》
希望本文所述对大家JavaScript程序设计有所帮助。
新闻热点
疑难解答