举个例子,在设计从服务器返回的JSON时,这是更好的做法:
方法1:将值作为正确的类型返回:
{
"id": 1,
"name": "A green door",
"price": 12.50,
"tags": ["home", "green"]
}
或
方法2:用双引号括起所有值,如下所示:
{
"id": "1",
"name": "A green door",
"price": "12.50",
"tags": ["home", "green"]
}
哪种方法更好?每种方法的优缺点是什么?有任何权衡吗?
答案 0 :(得分:1)
最好只对实际字符串使用引号,而不是对整数等任何其他类型使用引号。
通过将所有内容存储为字符串,任何解析json并期望int但获取字符串的应用程序将抛出异常。它也可能对性能产生影响,因为字符串比其他类型占用更多内存。
根据具体情况,您可以编写或找到负责类型转换的解析器,但更容易按预期使用引号。
因此,除非您必须将此json提供给现有应用程序,该应用程序希望将每种类型存储为字符串,否则我认为没有理由为所有类型使用引号。
答案 1 :(得分:0)
精度损失不利。你丢掉了固有的意义。如果你根据你的申请更容易做到这一点,那就没关系了;只要知道你在做什么。