`

js object --> jsonStr(javascript 对象转为 json字符串)

阅读更多
//经测试 可用
Object.prototype.deep_clone = function(){  
    eval("var tmp = " + this.toJSON());  
    return tmp;  
}

Object.prototype.toJSON = function(){  
    var json = [];  
    for(var i in this){  
        if(!this.hasOwnProperty(i)) continue;  
        //if(typeof this[i] == "function") continue;  
        json.push(  
            i.toJSON() + " : " +  
            ((this[i] != null) ? this[i].toJSON() : "null")  
        )  
    }  
    return "{\n " + json.join(",\n ") + "\n}";  
}

  
Array.prototype.toJSON = function(){  
    for(var i=0,json=[];i<this.length;i++)  
        json[i] = (this[i] != null) ? this[i].toJSON() : "null";  
    return "["+json.join(", ")+"]"  
}  
  
String.prototype.toJSON = function(){  
    return '"' +  
        this.replace(/(\\|\")/g,"\\$1")  
        .replace(/\n|\r|\t/g,function(){  
            var a = arguments[0];  
            return  (a == '\n') ? '\\n':  
                    (a == '\r') ? '\\r':  
                    (a == '\t') ? '\\t': ""  
        }) +  
        '"'  
}

  
Boolean.prototype.toJSON = function(){return this}  

Function.prototype.toJSON = function(){return this}  

Number.prototype.toJSON = function(){return this}  

RegExp.prototype.toJSON = function(){return this}  
  
// strict but slow  
String.prototype.toJSON = function(){  
    var tmp = this.split("");  
    for(var i=0;i<tmp.length;i++){  
        var c = tmp[i];  
        (c >= ' ') ?  
            (c == '\\') ? (tmp[i] = '\\\\'):  
            (c == '"')  ? (tmp[i] = '\\"' ): 0 :  
        (tmp[i] =   
            (c == '\n') ? '\\n' :  
            (c == '\r') ? '\\r' :  
            (c == '\t') ? '\\t' :  
            (c == '\b') ? '\\b' :  
            (c == '\f') ? '\\f' :  
            (c = c.charCodeAt(),('\\u00' + ((c>15)?1:0)+(c%16)))  
        )  
    }  
    return '"' + tmp.join("") + '"';  
}
//测试:var obj = new object(); obj.id = '007'; var jsonStr = obj.toJSON();
分享到:
评论

相关推荐

    Json对象与Json字符串互转(4种转换方式)

    //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象 2&gt;浏览器支持的转换方式(Firefox,chrome,opera,safari,ie9,ie8)等浏览器: 代码如下: JSON.parse(jsonstr); //可以将json字符串转换成json...

    JSON数据转字符串

    自动把JSon数据转化为字符串,下面附示例代码: &lt;!doctype html&gt; &lt;html&gt; &lt;body&gt; &lt;script src="json2.js"&gt;&lt;/script&gt; &lt;script&gt; var obj={a:[2,3],b:{m:[3,4],n:2} }; var jsonStr = JSON.stringify( obj ); alert...

    javascript中JSON对象与JSON字符串相互转换实例

    本文实例讲述了javascript中JSON对象与JSON字符串相互转换实现方法。分享给大家供大家参考。具体如下: [removed] // 根据JSON对象的属性的名称获取属性的值 var jsonObj = { name: "jxqlovejava" }; // JSON对象 ...

    详解JavaScript中js对象与JSON格式字符串的相互转换

    首先我们来看一下js中JSON格式的字符串 var JSONStr1 = "{\"name\" : \"张三\"}"; 注意以下的写法不是js中...下面我们来看一下在js中怎么把JSON格式的字符串转换成一个JS对象。( var jsObj3 = eval("(" + JSONStr1 +

    json3.js开发板和生产版本

    对JSON字符串反序列化成JSON对象;JSON.stringify(jsonobj); 将JSON对象序列化成JSON字符串,传到后台再进行反序列化, 官方地址 https://bestiejs.github.io/json3/ ;相对json.js与json2.js json3.js做了很多优化...

    微信小程序跳转传参数 传对象,wx.request的json数据传输

    我的解决办法是先将对象转换为json字符串然后到下个页面将json字符串,再转化为对象。如下:   let str=JSON.stringify(e.currentTarget.dataset.item); wx.navigateTo({ url: '../toMybaby/babyDetail/babyDetail?...

    json与对象转换工具类

    同样先将json字符串转换为json对象,再将json对象转换为java对象,如下所示。 JSONObject obj = new JSONObject().fromObject(jsonStr);//将json字符串转换为json对象 将json对象转换为java对象 Person jb = (Person...

    json字符串传到前台input的方法

    JSONObject把对象转换成的json字符串,无法直接通过request.setAttribute();传到页面的input标签 如下是错误的: request.setAttribute(“pageInfoJsonStr”, JSONObject.fromObject(pageInfo).toString()); 还需要...

    js:字符串(string)转json

    NULL 博文链接:https://bijian1013.iteye.com/blog/2271892

    Newtonsoft.Json.dll

    unity3d的工具包,用途:将该dll文件下载好,保存至Assets/Plugins目录下。然后到vs工程里引用该dll,这样就可以去工程里调用JsonConvert.DeserializeObject&lt;T&gt;(jsonStr)。达到解析json文件的目地;

    Java JSON与Object互转源代码

    高效的JSON与Object互转的工具源代码,如果JSON数据未按该工具规定的数据格式转化成对象,将转化成java.util.Map实例。 (比JSON官方的API更适用。支持对象之间的多级引用,支持Map, List等集合。不需要引用其它中间...

    JAVA Cookie JSON 项目中应用

    //设置cookies function setCookie(name, value, expires, path, domain, secure) //根据cookies key值获取value ...* json字符串转json对象 */ var jsonObj = eval('('+jsonStr+')') 后台Java解析json

    golang的json处理库json4g.zip

    json4g 提供了json的简便出来方法方法介绍1,LoadByString(string) 参数为json字符串,返回 JsonNode 对象指针2,NowJsonNode(string,interface{}) 参数节点名3,NowJsonNodeByString(string,string) 参数 json字符...

    json-schema-validator-master JsonValidator

    * 验证一个字符串是否是合法的JSON串 * * @param input 要验证的字符串 * @return true-合法 ,false-非法 */ public boolean validate(String input) { input = input.trim(); boolean ret = valid(input)...

    json_simple1.1

    //1 json对象转换为字符串 JSONObject subObject = new JSONObject(); subObject.put("ooo", "***"); subObject.put("ppp", "&&&"); JSONObject object = new JSONObject(); object.put("aaa", "111");...

    detect-json-style:查找不同 JSON 格式的表格数据

    检测-json-style 视窗Mac/...detectJSON ( '{"rows": [{"a": 1}, {"a": 2}, {"a":' )// json -&gt; {style: 'object', selector: 'rows.*'} 与peek-stream和JSONStream一起使用效果JSONStream 。 selector 属性与JSONStr

    JavaScript的eval JSON object问题

    通常的做法就是var jsonData = eval&#40;xmlHttp.responseText&#41;。这看起来似乎一切都是正确的,但当你运行代码的时候,你会发现报“invalid labe”错误了。为什么?我也不清楚,但我找到了解决这个问题的方法。 ...

    Json字符串转换为JS对象的高效方法实例

    一般JSON字符串转换为JS对象,都使用var jsonStr="{a:1}";var jsonObj = eval&#40;"("+jsonStr+"&#41;");

    javascript中判断json的方法总结

    简单地说, JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串(伪对象) ,然后就可以在函数之间轻松地传递这个字符串,或者 在异步应用程序中将字符串从 Web 客户端传递给服务器端程序 。这个字符串看起来...

    JSONO与Java 对象的转换工具——json.jar

    ajax 与 java 之间使用 json 交换数据,JSON到Java 对象的转换,Java对象到JSON的转换。 JSONObject object=new JSONObject(javaBean); String jsonStr=object.toString();

Global site tag (gtag.js) - Google Analytics