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;
}
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;
(実際には、数値タイプを無視してください)