由於ie6,7不支援JSON.stringify(json), 我們只好自己再寫一個函數來取代這個方法. 程式碼如下:
複製程式碼
程式碼如下:
function JsonToStr(o) {
var arr = [];
var fmt = function(s) {
if ( typeof s == 'object' && s != null) return JsonToStr(s);
return /^(string|number)$/.test(typeof s) ? "'" s "'" : s;
}
for (var i in o) arr.push("'" i "':" fmt(o[i]));
return '{' arr.join(',') ' }';}
另外: 如果不想json中的數字也被字串化. 可以改造:
return /^(string|number)$/.test(typeof s) ? '"' s '"' : s;
為 : return /^(string)$/.test(typeof s) ? '"' s '"' : s;
(其實就是把number型的忽略掉而已)