描述布尔型的json
我在服务器端对象模型中有一个字段,它是一个布尔值。我正在写一个自定义json转换器,我想知道如何最好地为json编码。我应该把它作为布尔值还是应该将true
转换为1
和false
至0
。描述布尔型的json
这样做的最好方法是什么?
谢谢。
我更喜欢在我的JSON中使用true/false关键字,但1/0仍然可以工作。你的问题是关于如何编写代码来创建这个JSON对象?这取决于你如何实现转换器。你到目前为止有什么?
没有定义最好的方法。这取决于你(谁使用这个)。
Persobally我认为,如果您代表布尔值,请使用True
/False
,而不是1/0。这更可读(对于将要维护此代码的未来开发者/几个月后查看此代码)。
要增加这一点,使用'True/False'可能会使您的代码在未来更加健壮。无论您现在使用哪种语言来解释JSON(可能是JavaScript),都会将1视为真,0视为假,但如果您以后将此JSON作为API的一部分公开,那该怎么办?有人可能会接触到你的服务,解析JSON并创建一个Int/Number /无论强类型的真值对象为0,那么必须以不合逻辑的方式解决这个限制。即使没有计划要做到这一点,通常有利于尽可能减少你想要的和你想要的之间的语义差距。 – rybosome 2012-07-31 17:53:01
我推荐使用true
和false
,因为它更清楚地表明这些值是布尔值。
你为什么要编写一个定制的JSON转换器? – rybosome 2012-07-31 17:49:13
由于某些属性不意味着对客户可见。 – frenchie 2012-07-31 17:49:57
我不明白为什么你想要描述一个布尔值而不是布尔值,除非你使用的语言不支持该类型。 – 2012-07-31 17:51:04