【发布时间】:2016-05-13 09:11:50
【问题描述】:
我在 Javascript 中有分层数据,如下所示,我尝试找到在每个 comments 节点中添加 jsonStringify 的方法,该怎么做?
var o = {
"comments": {
"count": 2,
"data": [
{
"text": "..",
"comments": {
"count": 1,
"data": [
{
"text": "..",
"comments": {
"count": 0,
"data": [],
// "jsonStringify":
}
},
],
// "jsonStringify":
}
},
{
"text": "..",
"comments": {
"count": 0,
"data": [],
// "jsonStringify":
}
},
],
// "jsonStringify":
}
};
添加jsonStringfy
这只适用于知道多少级
var jsonStringify = JSON.stringify(o.comments);
o.comments.jsonStringify = jsonStringify;
for (var i = 0; i < o.comments.data.length; i++) {
var jsonStringify = JSON.stringify(o.comments.data[i].comments);
o.comments.data[i].comments.jsonStringify = jsonStringify;
}
例如上面的数据有2个分支,最深的层次是3(
"cmets" > "cmets" > "cmets",
"cmets" >"cmets"),
我想找到每个“cmets”获取如下1的值并应用于JSON.stringify函数获取结果然后修改相同的节点插入结果变为2
1
"comments": {
"count": 0,
"data": []
}
2
"comments": {
"count": 0,
"data": [],
"jsonStringify": "{\"count\":0,\"data\":[]}"
}
如果数据不知道有多少级,我会尝试寻找方法
【问题讨论】:
-
完全不清楚你在这里问什么。
-
您要查找每个名为“cmets”的节点,然后将
jsonStringify()函数应用于其值吗?如果是这样,你想要字符串化的结果是什么? -
@JohnHascall 感谢您的回复,是的,我想找到每个节点“cmets”并将
JSON.stringify()应用于其值,然后将结果附加到相同的“cmets”节点 -
还是不明白,可能是你用的措辞。你能举一个输入和输出的例子吗?你想序列化某事吗?还是这是您实现目标的方法?你想以什么结束?对象还是字符串?
-
@Thomas 请看我的更新
标签: javascript json loops hierarchy hierarchical-data