JSON网络服务:什么是输出货币的最佳方式?
作为字符串OR
"Amount": "100.12345"
作为号码?
"Amount": 100.12345
PayЗal和Google Checkout将json输出为字符串。为什么呢?
答案 0 :(得分:2)
我会做一个整数美分,以保持尽可能简单。
"Amount": 1045
...
var amount = json.amount/100;
...
amount === 10.45
答案 1 :(得分:1)
在我看来,使用数字直到在C#中解析将是十进制(而不是双精度)。有关更多信息,请查看此处 Why not use Double or Float to represent currency?
如果您使用的是JSON.NET,请参阅此帖子Json.NET Primitive Types - use Decimal instead of Double
在JavaScript中,使用什么并不重要。