使用递归处理数组的Javascript数组
我正在制作一个实时聊天应用程序,允许你回复其他人。数据存储在每个新消息都有一个数组来存储对它的回复的地方,因此数组可能看起来像使用递归处理数组的Javascript数组,javascript,arrays,recursion,Javascript,Arrays,Recursion,我正在制作一个实时聊天应用程序,允许你回复其他人。数据存储在每个新消息都有一个数组来存储对它的回复的地方,因此数组可能看起来像 FIRST MESSAGE ---REPLY TO FIRST MESSAGE ---REPLY TO SUB MESSAGE ---REPLY TO FIRST MESSAGE ---REPLY TO SUB MESSAGE ---REPLY TO SUB MESSAGE 我目前正在使用以下代码: function process (obj, fu
FIRST MESSAGE
---REPLY TO FIRST MESSAGE
---REPLY TO SUB MESSAGE
---REPLY TO FIRST MESSAGE
---REPLY TO SUB MESSAGE
---REPLY TO SUB MESSAGE
我目前正在使用以下代码:
function process (obj, func) {
func(obj);
if (obj.child) {
obj.child.forEach(function (child) {
process(child, func);
});
}
}
我将其称为(数据是所有消息的数组):
for(i=0;i
这似乎只得到了每条消息的第一个回复,而忽略了其余的回复。有没有关于递归函数的想法可以防止这种情况?我真的被困在这里了。谢谢你的帮助 别客气!我得到了它。我需要调用流程函数内部的另一个循环,如:
for (i = 0; i < data.length; i++) {
process(data[i]['replies'], function (obj) {
for (c = 0; c < obj.length; c++) {
}
});
}
for(i=0;i
for (i = 0; i < data.length; i++) {
process(data[i]['replies'], function (obj) {
for (c = 0; c < obj.length; c++) {
}
});
}