【问题标题】:Serializing an object to JSON将对象序列化为 JSON
【发布时间】:2010-10-08 04:40:50
【问题描述】:

如何在 JavaScript 中将对象序列化为 JSON?

【问题讨论】:

    标签: javascript json


    【解决方案1】:

    您正在寻找JSON.stringify()

    【讨论】:

    【解决方案2】:

    下载https://github.com/douglascrockford/JSON-js/blob/master/json2.js,包含它并执行

    var json_data = JSON.stringify(obj);
    

    【讨论】:

    • 我真的需要包含“json2.js”吗?没有它似乎也能工作。
    • @PavelAlexeev 不,您不需要再包含json2.js,除非您的目标是非常旧的浏览器:现代浏览器包含JSON 对象的本机实现。 json2.js 的好处是它只会在没有找到原生对象的情况下启动。有关浏览器支持的详细分类,请参阅 [stackoverflow.com/questions/891299/…
    【解决方案3】:

    为了保持向后兼容,如果没有提供原生 JSON 支持,我会从 cloudflare CDN 加载 Crockfords JSON 库(为简单起见,使用 jQuery):

    function winHasJSON(){
      json_data = JSON.stringify(obj);
      // ... (do stuff with json_data)
    }
    if(typeof JSON === 'object' && typeof JSON.stringify === 'function'){
      winHasJSON();
    } else {
      $.getScript('//cdnjs.cloudflare.com/ajax/libs/json2/20121008/json2.min.js', winHasJSON)
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-12-22
      • 2018-07-20
      • 2021-12-16
      • 2011-10-13
      相关资源
      最近更新 更多