【发布时间】:2014-02-13 15:10:51
【问题描述】:
“刺痛”复杂的 JSON 对象时,我无法获得正确的结果。 例如:
{
"a": "a",
"b": [
[
{
"c": "c",
"d": "d",
"e": "e"
},
{
"c": "c",
"d": "d",
"e": "e"
},
{
"c": "c",
"d": "d",
"e": "e"
}
],
[{
"c": "c",
"d": "d",
"e": "e"
}],
[
{
"c": "c",
"d": "d",
"e": "e"
},
{
"c": "c",
"d": "d",
"e": "e"
}
]
],
"f": [
{
"g": "g",
"h": "h"
},
{
"g": "g",
"h": "h"
},
{"g": "g"}
]
}
在上面的示例中,a 甚至 f 字符串化很好,但我正在“丢失”b 值的内容(字符串化为空数组),从我读到的内容来看,如果还有更多在 JSON 的深处,需要进行深度字符串化,但我似乎无法以正确的方式查看b 键的内容。
有人知道怎么做吗?
附言节点甚至可以有 3 层或更多层,而不仅仅是一层或两层。
谢谢
更新:我发现了问题,我正在使用 $.tmpl 并且出于某种原因,在某些情况下,我得到的是关联数组而不是对象数组(我知道在JS,但这就是我得到的,大小为 0 的数组,其中包含键值对,不是对象)在第二级的“b”值中。 Stringify 正在做我期望它现在做的事情。谢谢
【问题讨论】:
-
我不知道你在哪里读到的。
JSON.stringify应该处理所有级别。你能展示你得到了什么并指出你失去了什么吗? -
本次赋值前a、c、d、e、g、h的值是多少?
-
对我来说很好:jsfiddle.net/barmar/kEf82/3
标签: javascript jquery json stringify