json格式的javascript對象用法分析
本文實例分析了json格式的javascript對象用法。分享給大家供大家參考,具體如下:
格式:
objectName = {
property1:value1,
property2:value2,
…,
propertyN:valueN
}
property是對象的屬性 ,value則是對象的值,值可以是字符串、數(shù)字或對象三者之一
例一: 值為字符串和數(shù)字
var user={
name:"user1",
age:18
};
例二:值為字符串和對象
var user={ //user本身是一個對象
name:"user1",
job:{ //job也是一個對象
salary:3000,
title:programmer
}
}
例三:值還可以為函數(shù)
var user={ //user本身為一個對象
name:"user1",
age:18,
getName:function(){ //getName為方法
return this.name;
}
}
以下ZPVisitor類的定義格式在實際企業(yè)項目中經(jīng)常被使用:
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 向服務端請求數(shù)據(jù)
$.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) { // 如果已經(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);
}
},// 結束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在線工具,相信大家在今后的開發(fā)中可以用得到:
在線JSON代碼檢驗、檢驗、美化、格式化工具:
http://tools.jb51.net/code/json
JSON在線格式化工具:
http://tools.jb51.net/code/jsonformat
在線XML/JSON互相轉換工具:
http://tools.jb51.net/code/xmljson
json代碼在線格式化/美化/壓縮/編輯/轉換工具:
http://tools.jb51.net/code/jsoncodeformat
C語言風格/HTML/CSS/json代碼格式化美化工具:
http://tools.jb51.net/code/ccode_html_css_json
更多關于JavaScript相關內(nèi)容感興趣的讀者可查看本站專題:《JavaScript中json操作技巧總結》、《JavaScript切換特效與技巧總結》、《JavaScript查找算法技巧總結》、《JavaScript動畫特效與技巧匯總》、《JavaScript錯誤與調(diào)試技巧總結》、《JavaScript數(shù)據(jù)結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數(shù)學運算用法總結》
希望本文所述對大家JavaScript程序設計有所幫助。
相關文章
jquery easyui combobox模糊過濾(示例代碼)
這篇文章主要介紹了jquery easyui combobox模糊過濾(示例代碼)。需要的朋友可以過來參考下,希望對大家有所幫助2013-11-11
jQuery建立一個按字母順序排列的友好頁面索引(兼容IE6/7/8)
很多人熟悉使用錨鏈接跳轉到的頁面部分的解決方案,這種效果當需要列出很長的數(shù)據(jù)集時,是非常實用的,然而頁面跳轉對于游客來說有時候并不是好友好,弊端我就不多說了,祥看下本文2013-02-02
jQuery實現(xiàn)的超酷蘋果風格圖標滑出菜單效果代碼
這篇文章主要介紹了jQuery實現(xiàn)的超酷蘋果風格圖標滑出菜單效果代碼,涉及jQuery基于鼠標hover事件動態(tài)操作頁面元素屬性的相關技巧,非常美觀實用,需要的朋友可以參考下2015-09-09

