gpt4 book ai didi

javascript - JSON.stringify() 数组的怪异与 Prototype.js

转载 作者:IT老高 更新时间:2023-10-28 12:42:53 25 4
gpt4 key购买 nike

我正在尝试找出我的 json 序列化出了什么问题,将我的应用程序的当前版本与旧版本一起使用,并发现 JSON.stringify() 的工作方式存在一些令人惊讶的差异(使用来自json.org)。

在我的应用程序的旧版本中:

 JSON.stringify({"a":[1,2]})

给我这个;

"{\"a\":[1,2]}"

在新版本中,

 JSON.stringify({"a":[1,2]})

给我这个;

"{\"a\":\"[1, 2]\"}"

知道什么可以改变以使相同的库在新版本中的数组括号周围加上引号?

最佳答案

由于 JSON.stringify 最近已经与一些浏览器一起发布,我建议使用它而不是 Prototype 的 toJSON。然后,您将检查 window.JSON && window.JSON.stringify,否则仅包含 json.org 库(通过 document.createElement('script')...)。要解决不兼容问题,请使用:

if(window.Prototype) {
delete Object.prototype.toJSON;
delete Array.prototype.toJSON;
delete Hash.prototype.toJSON;
delete String.prototype.toJSON;
}

关于javascript - JSON.stringify() 数组的怪异与 Prototype.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/710586/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com