多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > web前端 > jscript > JS將JSON對象轉化為字符串的改進方法

JS將JSON對象轉化為字符串的改進方法

來源:程序員人生   發布時間:2014-03-27 10:47:15 閱讀次數:3552次

由于工作需要,要在JS端將JSON對象轉化為字符串,并寫到用戶的COOKIE中,用來保存用戶的一些個人操作習慣。便在網上搜尋了一遍,發現方法有很多,有些代碼不清晰,看得亂,有些考慮不周全,生成的字符串有問題,便整合了一些好的寫法,自己改進了一下。可能還是考慮得不周全,但是感覺常用的類型都考慮了,望大家多多拍磚指點!

JSON.stringify(jsonobj),本來是最簡便的方法,可是存在瀏覽器兼容問題(僅適用于IE8+,Chrome 1+,FF 3+)。

var O2String = function (O) {
//return JSON.stringify(jsonobj);

var S = [];
var J = "";
if (Object.prototype.toString.apply(O) === '[object Array]') {
for (var i = 0; i < O.length; i++)
S.push(O2String(O[i]));
J = '[' + S.join(',') + ']';
}
else if (Object.prototype.toString.apply(O) === '[object Date]') {
J = "new Date(" + O.getTime() + ")";
}
else if (Object.prototype.toString.apply(O) === '[object RegExp]' || Object.prototype.toString.apply(O) === '[object Function]') {
J = O.toString();
}
else if (Object.prototype.toString.apply(O) === '[object Object]') {
for (var i in O) {
O[i] = typeof (O[i]) == 'string' ? '"' + O[i] + '"' : (typeof (O[i]) === 'object' ? O2String(O[i]) : O[i]);
S.push(i + ':' + O[i]);
}
J = '{' + S.join(',') + '}';
}

return J;
};



/*-----------------------以下是測試代碼-----------------------*/

var jsonStr = O2String(
[
{
"Page": "plan",
"Custom":
[
{
"ItemName": "CustomLabel1",
"ItemContent": 1,
"IsItem": true,
"ItemDate": new Date(1320774905467),
"ItemReg": /[w]*?/gi,
"ItemFunc": function () { alert("ItemFunc"); }
},
{
"ItemName": "CustomLabel1",
"ItemContent": 1,
"IsItem": true,
"ItemDate": new Date(1320774905467),
"ItemReg": /[w]*?/gi,
"ItemFunc": function () { alert("ItemFunc"); }
}
]
},
{
"Page": "project",
"Custom":
[
{
"ItemName": "CustomLabel2",
"ItemContent": 2,
"IsItem": false,
"ItemDate": new Date(1320774905467),
"ItemReg": /[w]*?/gi,
"ItemFunc": function () { alert("ItemFunc"); }
},
{
"ItemName": "CustomLabel2",
"ItemContent": 2,
"IsItem": false,
"ItemDate": new Date(1320774905467),
"ItemReg": /[w]*?/gi,
"ItemFunc": function () { alert("ItemFunc"); }
}
]
}
]
);
alert(jsonStr);
var jsonObj = eval("(" + jsonStr + ")");
alert(jsonObj.length);

(文章來源:博客園)

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产精品福利网站 | 日本日本 | 国产精品v免费视频 | 国产色综合一区二区三区 | 日本在线不卡免费视频一区 | 亚洲欧美精品天堂久久综合一区 | 黑色丝袜高跟国产在线91 | xxxx性bbbb欧美视频 | 17videosex性欧美 | 欧美精品v国产精品v | 国产精品福利一区二区 | 性欧美一级毛片在线播放 | 亚洲成人xxx| 视频在线观看一区二区三区 | 亚洲色图第三页 | 一级毛片视频免费观看 | 中文字幕网站在线观看 | 国产精品国产三级国产专区不 | 日本亚州在线播放精品 | 国产欧美久久一区二区 | 亚洲国产一区二区三区四区五区 | 香蕉在线精品亚洲第一区 | 亚洲三级视频在线观看 | 欧美一区二区三区国产精品 | 一级毛片免费视频观看 | 黑人极品videos精品欧美裸 | 亚洲黄色小说视频 | 找国产毛片看 | 国产精品亚洲专一区二区三区 | 国产精品video | 亚洲片在线 | 亚洲在线免费观看 | 亚洲精品日韩在线一区 | 国内视频一区二区 | 日韩中文字幕在线观看 | 亚洲网站免费 | 日本欧美一级二级三级不卡 | 欧美成人免费高清二区三区 | 欧美日韩国产不卡在线观看 | 国产成人乱码一区二区三区 | 欧美国产一区二区 |