将json对象转换为字符串的方法
人气:0复制代码 代码如下:
/*
将json对象转换为字符串
使用方法:
var json = {id=3,name="abc"};
var str = tools.j2s(json);
*/
tools.j2s = function(O) {
var S = [];
var J = "";
if (Object.prototype.toString.apply(O) === '[object Array]') {
for ( var i = 0; i < O.length; i++) {
S.push(this.j2s(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) {
var tempObj = "";
if(typeof (O[i]) == 'string') {
tempObj = '"' + O[i] + '"';
} else if(typeof (O[i]) === 'object') {
tempObj = this.j2s(O[i]);
} else {
tempObj = O[i];
}
S.push('"' + i + '":' + tempObj);
}
J = '{' + S.join(',') + '}';
} else if (Object.prototype.toString.apply(O) === '[object String]') {
J = '"' + O + '"';
} else {
J = O;
}
return J;
};
//json字符串转换为json对象
tools.s2j = function(jsonString) {
if(jsonString == null || jsonString == "" ) {
jsonString = "{}";
}
return eval('('+jsonString+')');
};
//JSON字符串到Object
tools.json2Obj = function(_json) {
if (_json == '') {
//alert("函数初始化失败!");
return "";
}
return eval("({root:"+_json+"})");
};
加载全部内容