json格式的javascript對(duì)象用法分析
本文實(shí)例分析了json格式的javascript對(duì)象用法。分享給大家供大家參考,具體如下:
格式:
objectName = {
property1:value1,
property2:value2,
…,
propertyN:valueN
}
property是對(duì)象的屬性 ,value則是對(duì)象的值,值可以是字符串、數(shù)字或?qū)ο笕咧?/p>
例一: 值為字符串和數(shù)字
var user={
name:"user1",
age:18
};
例二:值為字符串和對(duì)象
var user={ //user本身是一個(gè)對(duì)象
name:"user1",
job:{ //job也是一個(gè)對(duì)象
salary:3000,
title:programmer
}
}
例三:值還可以為函數(shù)
var user={ //user本身為一個(gè)對(duì)象
name:"user1",
age:18,
getName:function(){ //getName為方法
return this.name;
}
}
以下ZPVisitor類的定義格式在實(shí)際企業(yè)項(xiàng)目中經(jīng)常被使用:
var ZPVisitor = {
init : function(){
var url = ZPConstant.AJAX_SERVER + "&a=hello" + "&sid=" + Math.random();
$.getJSON(url,function(result){ // #TODO 跨域請(qǐng)求?
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\">注冊(cè)</a>";
} else {
logininfo += " <a href=\"" + ZPConstant.MYZP_DOMAIN + "index.php?c=member&a=logout\">注銷</a>";
}
$("#login-info").html(logininfo);
} else {
popAlert(result.msg);
}
}); //結(jié)束getJSON
}, //結(jié)束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);
}
});//結(jié)束getJSON方法
},// 結(jié)束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 向服務(wù)端請(qǐng)求數(shù)據(jù)
$.getJSON(url,function(response){
if(response.done){
callback(response.data,items);
} else {
return false;
}
});//結(jié)束getJSON方法
},//結(jié)束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) { // 如果已經(jīng)存在,則移除之前寫入的數(shù)據(jù)
_tempPids.push(parseInt(pids[i]));
}
}
_tempPids.push(pid);// 將新數(shù)據(jù)放到數(shù)組最后
setCookie(ZPConstant.VIEW_HISTORY_CKNAME, _tempPids.reverse().slice(0,5).reverse().join(","));
} else {
setCookie(ZPConstant.VIEW_HISTORY_CKNAME, pid);
}
},// 結(jié)束add方法
clear:function(){
setCookie(ZPConstant.VIEW_HISTORY_CKNAME, '', -100);
}
},//結(jié)束vHistory
// 購(gòu)物車已刪除的商品記錄
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);
}
}//結(jié)束dropHistory
}//結(jié)束ZPVisitor
PS:這里再為大家推薦幾款json在線工具,相信大家在今后的開發(fā)中可以用得到:
在線JSON代碼檢驗(yàn)、檢驗(yàn)、美化、格式化工具:
http://tools.jb51.net/code/json
JSON在線格式化工具:
http://tools.jb51.net/code/jsonformat
在線XML/JSON互相轉(zhuǎn)換工具:
http://tools.jb51.net/code/xmljson
json代碼在線格式化/美化/壓縮/編輯/轉(zhuǎn)換工具:
http://tools.jb51.net/code/jsoncodeformat
C語言風(fēng)格/HTML/CSS/json代碼格式化美化工具:
http://tools.jb51.net/code/ccode_html_css_json
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript中json操作技巧總結(jié)》、《JavaScript切換特效與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript動(dòng)畫特效與技巧匯總》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
相關(guān)文章
EasyUI在表單提交之前進(jìn)行驗(yàn)證的實(shí)例代碼
這篇文章主要介紹了EasyUI在表單提交之前進(jìn)行驗(yàn)證的實(shí)例代碼的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06
jQuery UI 實(shí)現(xiàn)email輸入提示實(shí)例
本文為大家介紹下使用jQuery UI 實(shí)現(xiàn)email輸入提示,具體思路如下,感興趣的朋友可以參考下2013-08-08
jquery easyui combobox模糊過濾(示例代碼)
這篇文章主要介紹了jquery easyui combobox模糊過濾(示例代碼)。需要的朋友可以過來參考下,希望對(duì)大家有所幫助2013-11-11
jQuery建立一個(gè)按字母順序排列的友好頁面索引(兼容IE6/7/8)
很多人熟悉使用錨鏈接跳轉(zhuǎn)到的頁面部分的解決方案,這種效果當(dāng)需要列出很長(zhǎng)的數(shù)據(jù)集時(shí),是非常實(shí)用的,然而頁面跳轉(zhuǎn)對(duì)于游客來說有時(shí)候并不是好友好,弊端我就不多說了,祥看下本文2013-02-02
jQuery插件-jRating評(píng)分插件源碼分析及使用方法
該插件被廣泛應(yīng)用于各種需要評(píng)分的頁面當(dāng)中,今天作為學(xué)習(xí),把源碼拿出來分析一下,順便學(xué)習(xí)其使用方法,需要了解的朋友可以研究下2012-12-12
jQuery實(shí)現(xiàn)的超酷蘋果風(fēng)格圖標(biāo)滑出菜單效果代碼
這篇文章主要介紹了jQuery實(shí)現(xiàn)的超酷蘋果風(fēng)格圖標(biāo)滑出菜單效果代碼,涉及jQuery基于鼠標(biāo)hover事件動(dòng)態(tài)操作頁面元素屬性的相關(guān)技巧,非常美觀實(shí)用,需要的朋友可以參考下2015-09-09

