我有一个数据结构存储在JSON格式,使用serializeJSON函数转换。我遇到的问题是可以在CF中布尔的字符串(如Yes,No,True和False)以布尔值的形式转换为JSON。以下是示例代码。有关如何防止这种情况的任何想法?如何防止SerializeJSON将是/否/真/假字符串更改为布尔值?
代码:
<cfset test = {str='Yes'}>
<cfset json = serializeJSON(test)>
<cfset fromJSON = deserializeJSON(json)>
<cfoutput>
#test.str#<br>
#json#<br>
#fromJSON.str#
</cfoutput>
结果:
Yes
{"STR":true}
YES
嗯,我刚想出一个解决方案。在字符串中添加额外的空间是防止它被转换为布尔值的一种方法。这适用于我目前的需求,但任何更好的解决方案将不胜感激,所以我不必在转换之前操作字符串。 – 2009-12-08 15:37:46
即使我自己制作JSON而没有使用serializeJSON() – 2014-09-06 20:31:18