我有一个 JSON 文件,其中包含 float
类型的数字.在 react 应用程序中使用文件之前,我想将它们转换为小数点后两位。我了解我需要使用 number.toFixed(2) 实现这一目标。我怎样才能在 JSON 文件中实现这一点?
文件样本:
[
{
"module": "prado2",
"current_value": 3437.0,
"value_avg": 3436.5,
"value_avg_plus_stdv": 3457.7132034355964,
"value_avg_minus_stdv": 3415.2867965644036,
},
{
"module": "prado2",
"current_value": 3437.0,
"value_avg": 3436.5,
"value_avg_plus_stdv": 4457.7132034355964,
"value_avg_minus_stdv": 3425.2867965644036,
}
]
最终结果应该是:
[
{
"module": "prado2",
"current_value": 3437.0,
"value_avg": 3436.5,
"value_avg_plus_stdv": 3457.71,
"value_avg_minus_stdv": 3415.29,
},
{
"module": "prado2",
"current_value": 3437.0,
"value_avg": 3436.5,
"value_avg_plus_stdv": 4457.71,
"value_avg_minus_stdv": 3425.29,
}
]
谢谢!
最佳答案
您可以将 reviver 函数传递给 JSON.parse
方法来规定在返回之前如何转换最初通过解析产生的值:
JSON.parse(jsonString, (key, value) =>
typeof value === "number" ? Math.round(value * 100) / 100 : value
);
替换
Math.round(value * 100) / 100
与 Math.round((value + Number.EPSILON) * 100) / 100或 +value.toFixed(2)或您希望的其他方法。更多关于 JSON.parse
关于javascript - 如何使用 Javascript 将 JSON 中的浮点值转换为小数点后两位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62467154/