2012-04-13 45 views
0

是否有可能使用json字符串作为json的值?通过有效的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'一个'String'或'Object'价值? – Dennis 2012-04-13 14:56:02

+0

可以是字符串或对象... – rgomesf 2012-04-13 17:43:31

回答

0

肯定。但是,我看不出有什么理由这样做;它会需要很多逃脱的报价。而且这会使解析变得困难,除此之外,它会混淆每个看着你的来源的人。

+0

同意。如果你正在努力做到这一点,那么很可能有更好的方法来实现你想要做的任何事情。 – 2012-04-13 14:54:24

+0

我有一个非常大的json,需要很长的时间来解析ie7。我试图找到一种方法来处理它的小块。我知道我可以让服务器分割数据并发出多个请求来获取数据,但现在它不是一个选项... – rgomesf 2012-04-13 17:46:57

0

当然,你只需要双引号\"和换行符\n。我不建议你这样做,但这肯定是可能的。

+0

这是无效的JSON – 2012-04-13 14:55:32

+0

您需要大括号和引号, “1”':,即''1“:”{\“items \”:[...]}“' – 2012-04-13 14:59:04

+0

想通了,字符串不能是多行,所以我删除了这个例子。 – 2012-04-13 15:01:50

1

是的,这里有一个简单的例子:

{ 
    "a": 3, 
    "b": "{ \"c\": \"hello\" } " 
} 

或者更多的东西一样,你有什么

{ 
    "numberOfBlocks": 2, 
    "1": "{ 
    \"items\": [ 
     { 
     \"Id\": \"111257\", 
     \"Name\": \"AADbZyXqnVRCHjqWSpqQfgpu\", 
     \"Order\": 0 
     }, 
     {\ 
     \"Id\": \"162972\", 
     \"Name\": \"AADbZyXqnVRCHjqWSpqQfgpu\", 
     \"Order\": 1 
     }]" 
} 

然而,并非字面换行符是无效的JSON,所以你” d也需要逃避换行。在JS,它看起来像下面

var a = { 
    "numberOfBlocks": 2, 
    "1": "{\ 
    \"items\": [\ 
     {\ 
     \"Id\": \"111257\",\ 
     \"Name\": \"AADbZyXqnVRCHjqWSpqQfgpu\",\ 
     \"Order\": 0\ 
     },\ 
     {\ 
     \"Id\": \"162972\",\ 
     \"Name\": \"AADbZyXqnVRCHjqWSpqQfgpu\",\ 
     \"Order\": 1\ 
     }]" 
} 

enter image description here