JSON 将数字解析为字符串

hyb*_*ken 4 javascript parsing json

在 javascript 中将 JSON 数字解析为字符串的最佳方法是什么

Example:
{
  "a": 10.00
}
Run Code Online (Sandbox Code Playgroud)

请注意,我无法控制值 10.00。我无法在那里添加“+''”。我想保留小数位,但不规定必须有 2 位小数。

结果应该是 10.00 而不是 10

ari*_*iel 9

如果您需要完全相同的小数位数,唯一的方法是 JSON 将值显示为字符串。如果您无法控制源,您可以在解析之前编辑 JSON,添加引号,但这可能会带来一些问题。这需要经过严格的测试。

json = '{ "a": 10.00, "b":2.1020, "d":0.20,"c": "21" }';

json = json.replace(/:\s*[^"0-9.]*([0-9.]+)/g, ':"$1"');

console.log(json);
console.log(JSON.parse(json));
Run Code Online (Sandbox Code Playgroud)