var JS = function(){ //bravf_Zh //bravfing@126.com //2011.8.19 var _toStr = function(obj){ var type = Object.prototype.toString.call(obj).slice(8,-1) , rs; //如果是html节点(不完全判断,可伪造) if(obj.nodeType!=null){ return "HTMLNODE" } switch(type){ case "Undefined" : rs = undefined; break; case "Null" : rs = null; break; case "String" : rs = '"' + obj + '"'; break; case "Number" : case "Boolean" : case "Date" : case "RegExp" : rs = obj ; break; case "Array" : rs = ""; for(var i=0,len=obj.length;i<len;i++){ rs+=_toStr(obj[i])+","; } rs = "[" + rs.slice(0,-1) + "]"; break; case "Object" : rs = []; for(var k in obj){ rs.push('"' + k.toString() + '":' + _toStr(obj[k])); } rs = "{" + rs.join(",") + "}"; //rs = _toStr(obj); break; } return rs; }; return {"toStr":_toStr}; }(); o = [{"x":1,y:2,z:[3,4],w:[3,{x:[1]}],q:{x:[5,6]}},"hello",1.2]; document.write("JSON.stringify: <br/>" + JSON.stringify(o)); document.write("<br/>"); document.write("JS.toStr:<br/>" + JS.toStr(o));