JSON.stringify 和 JSON.parse 之间的区别

新手上路,请多包涵

我一直对何时使用这两种解析方法感到困惑。

在我回显我的 json_encoded 数据并通过 ajax 取回它之后,我经常对何时应该使用 JSON.stringifyJSON.parse 感到困惑。

解析时我在 console.log 中得到 [object,object] ,字符串化时得到 JavaScript 对象。

$.ajax({
url: "demo_test.txt",
success: function(data) {
         console.log(JSON.stringify(data))
                     /* OR */
         console.log(JSON.parse(data))
        //this is what I am unsure about?
    }
});

原文由 HIRA THAKUR 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 910
2 个回答

JSON.stringify 将 JavaScript 对象转换为 JSON 文本并将该 JSON 文本存储在字符串中,例如:

 var my_object = { key_1: "some text", key_2: true, key_3: 5 };

 var object_as_string = JSON.stringify(my_object);
 // "{"key_1":"some text","key_2":true,"key_3":5}"

 typeof(object_as_string);
 // "string"

JSON.parse 将一串 JSON 文本转换为 JavaScript 对象,例如:

 var object_as_string_as_object = JSON.parse(object_as_string);
 // {key_1: "some text", key_2: true, key_3: 5}

 typeof(object_as_string_as_object);
 // "object"

原文由 Quentin 发布,翻译遵循 CC BY-SA 4.0 许可协议

JSON.parse() 用于“解析”作为 JSON 接收的内容。

JSON.stringify() 是从对象/数组中创建一个 JSON 字符串。

原文由 Bjorn ‘Bjeaurn’ S 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏