javascript中将Object转换为String函数代码 (json str)

复制代码 代码如下:

  function obj2str(o){

  var r = [];

  if(typeof o =="string") return "\""+o.replace(/([\'\"\\])/g,"\\$1").replace(/(\n)/g,"\\n").replace(/(\r)/g,"\\r").replace(/(\t)/g,"\\t")+"\"";

  if(typeof o == "object"){

  if(!o.sort){

  for(var i in o)

  r.push(i+":"+obj2str(o[i]));

  if(!!document.all && !/^\n?function\s*toString\(\)\s*\{\n?\s*\[native code\]\n?\s*\}\n?\s*$/.test(o.toString)){

  r.push("toString:"+o.toString.toString());

  }

  r="{"+r.join()+"}"

  }else{

  for(var i =0;i<o.length;i++)

  r.push(obj2str(o[i]))

  r="["+r.join()+"]"

  }

  return r;

  }

  return o.toString();

  }