js对象转json字符串,并保留js对象中的javascript脚本

来源:互联网 发布:js获取索引值 编辑:程序博客网 时间:2024/06/05 16:42
</pre><pre name="code" class="javascript">
/** * Created by shantao on 2016/2/1. *//** * json对象转字符串 * * @param obj json对象 * @returns */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 obj;    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();  }}/** * json对象转字符串 * * @param obj json对象 * @param needScript true|false 是否保留json对象中的javaScript脚本 */function formatJsonObjToString(obj, needScript) {  var resultString = "";  if (needScript) {    resultString = obj2Str(obj);  } else {    resultString = JSON.stringify(obj);  }  return resultString;}

0 0
原创粉丝点击