是否可以使用json字符串作为json的值?将有效的json字符串作为json元素的值传递,
我需要这样的样本:
{
"numberOfBlocks": 2,
"1": ""items": [
{
"Id": "111257",
"Name": "AADbZyXqnVRCHjqWSpqQfgpu",
"Order": 0
},
{
"Id": "162972",
"Name": "AADbZyXqnVRCHjqWSpqQfgpu",
"Order": 1
}]",
"2":""items": [
{
"Id": "111257",
"Name": "AADbZyXqnVRCHjqWSpqQfgpu",
"Order": 0
},
{
"Id": "162972",
"Name": "AADbZyXqnVRCHjqWSpqQfgpu",
"Order": 1
}]"
}
答案 0 :(得分:1)
是的,这是一个简单的例子:
{
"a": 3,
"b": "{ \"c\": \"hello\" } "
}
或者更像你拥有的东西
{
"numberOfBlocks": 2,
"1": "{
\"items\": [
{
\"Id\": \"111257\",
\"Name\": \"AADbZyXqnVRCHjqWSpqQfgpu\",
\"Order\": 0
},
{\
\"Id\": \"162972\",
\"Name\": \"AADbZyXqnVRCHjqWSpqQfgpu\",
\"Order\": 1
}]"
}
但是,并非文字换行符在JSON中无效,因此您也需要转义换行符。在JS中,它看起来像下面的
var a = {
"numberOfBlocks": 2,
"1": "{\
\"items\": [\
{\
\"Id\": \"111257\",\
\"Name\": \"AADbZyXqnVRCHjqWSpqQfgpu\",\
\"Order\": 0\
},\
{\
\"Id\": \"162972\",\
\"Name\": \"AADbZyXqnVRCHjqWSpqQfgpu\",\
\"Order\": 1\
}]"
}
答案 1 :(得分:0)
是肯定的。但是,我认为没有理由这样做;它需要很多逃脱的报价。它会使解析变得困难,除此之外它会让所有看到你源头的人感到困惑。
答案 2 :(得分:0)
当然,您只需要将双引号转义为\"
,将换行符转换为\n
。我不建议你这样做,但这当然是可能的。