js对象转json数组的简单实现案例


  本文标签:js,json数组

复制代码 代码如下:

function obj2Str(obj){
switch(typeof(obj)){
case object:
var ret = [];
if (obj instanceof Array){
for (var i = 0, len = obj.length; i < len; i++){
ret.push(obj2Str(obj[i]));
}
return [ + ret.join(,) + ];
}
else if (obj instanceof RegExp){
return obj.toString();
}
else{
for (var a in obj){
ret.push(a + : + obj2Str(obj[a]));
}
return { + ret.join(,) + };
}
case function:
return function() {};
case number:
return obj.toString();
case string:
return "\"" + obj.replace(/(\\|\")/g, "\\$1").replace(/\n|\r|\t/g, function(a) {return ("\n"==a)?"\\n":("\r"==a)?"\\r":("\t"==a)?"\\t":"";}) + "\"";
case boolean:
return obj.toString();
default:
return obj.toString();
}
}