gpt4 book ai didi

javascript - JSON.stringify 将 Infinity 转换为 null

转载 作者:可可西里 更新时间:2023-11-01 01:31:13 28 4
gpt4 key购买 nike

我有 JavaScript 对象说:

var a = {b: Infinity, c: 10};

当我这样做

var b = JSON.stringify(a);

它返回以下内容

b = "{"b":null, "c":10}";

JSON.stringify 是如何将对象转换成字符串的?

我试过了 MDN Solution .

function censor(key, value) {
if (value == Infinity) {
return "Infinity";
}
return value;
}
var b = JSON.stringify(a, censor);

但在这种情况下,我必须返回字符串“Infinity”,而不是 Infinity。如果我返回 Infinity,它会再次将 Infinity 转换为 null。

我该如何解决这个问题。

最佳答案

与其他答案一样,Infinity 不是 JSON 可以存储为值的值的一部分。

您可以在解析 JSON 时反转审查方法:

var c = JSON.parse(b, function (key, value) {
return value === "Infinity" ? Infinity : value;
});

关于javascript - JSON.stringify 将 Infinity 转换为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16644597/

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