对象转字符串
var toString = function(obj){ var self = this; switch(typeof(obj)){ case 'object': var ret = []; if (obj instanceof Array){ for (var i = 0, len = obj.length; i < len; i++){ ret.push(arguments.callee(obj[i])); } return '[' + ret.join(',') + ']'; } else if (obj instanceof RegExp){ return obj.toString(); } else{ for (var a in obj){ ret.push(a + ':' + arguments.callee(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(); }; }
toString([{we:true,df:['sd','地方',{name:"ja'ck"}]}]);
"[{we:true,df:["sd","地方",{name:"ja'ck"}]}]"