let outlist = [{ level: 1, content: '标题测试'},{ level: 2, content: '互联网理财融资模式'},{ level: 1, content: '滴滴出行融资模式存在问题对策'},{ level: 2, content: '市场竞争白热化导致的被动融资'},{ level: 3, content: '111122223333'}]
请问如何将以上代码转换成如下格式:
let newlist = [{ level: 1, content: '标题测试', children: [{ level: 2, content: '互联网理财融资模式' }]},{ level: 1, content: '滴滴出行融资模式存在问题对策', children: [{ level: 2, content: '市场竞争白热化导致的被动融资', children: [{ level: 3, content: '111122223333' }] }]}]
我尝试了很多办法,但都未成功
最后退而求其次,想通过一个自定义数组区分对象所属层级,但依旧未果
function sortFun (num) { let index = 0 for (let j = 0; j < meun.length; j++) { if (meun[j].level == num + 1) { meun[j].storey[num] = index++ } } return meun // 只能标注出第一层的下标 // sortFun(num++) // 想通过递归,但是报 “Maximum call stack size exceeded” 错误}···
function transform(list) { const ret = {}; for (let i = 0; i < list.length; ++i) { const { level } = item = {...list[i] }; const preLevel = Math.max(level - 1, 0); if (!ret[preLevel]) { ret[preLevel] = [item]; if (ret[level]) { item.children = ret[level]; continue; } } else { ret[preLevel].push(item); } ret[level] = item.children = []; } return ret[0];}console.log(transform(outlist));
一个数据格式是这样的: 把他转换成这样 用JS需要怎么做?
本文向大家介绍JQuery $.each遍历JavaScript数组对象实例,包括了JQuery $.each遍历JavaScript数组对象实例的使用技巧和注意事项,需要的朋友参考一下 查看一个简单的jQuery的例子来遍历一个JavaScript数组对象。 上面的代码片断工作正常,提示 “apple”, “orange” … 等,如预期一样。 问题: JSON 字符串 下面的例子中,声明了一个
代码在这,codesandbox,网不好的可以点这个echarts demo 求教我如何将tooltips的name1,name2,data1,data2映射为我需要的格式呢?比如名字一,名字二,数据一,数据二。除了用formatter返回html格式,这个太麻烦了,我想知道有没有通用的映射配置
问题内容: 在Java中,您可以使用for循环遍历数组中的对象,如下所示: 您可以在JavaScript中做同样的事情吗? 问题答案: 您有几种选择: 1.顺序for循环: 优点 适用于各种环境 您可以使用和流控制语句 缺点 太冗长 势在必行 容易出现一对一的错误(有时也称为栅栏错误) 2. Array.prototype.forEach ES5规范引入了许多有益的数组方法,其中之一是,它为我们提
问题内容: 我必须遍历json数组对象。 它具有以下结构。 基本上我在做的是prod_1是产品的名称,并且prod_1的版本列表已填充在其中。 所以现在我想要的是产品的名称以及它的版本。 问题在于可能有很多产品和该产品下的许多版本。所以我需要可以在 javascript 中使用适当的循环结构来对其进行处理。 最好将循环将产品名称存储在一个变量中,将版本存储在另一个变量中,因为我需要对产品名称进行一
问题内容: 我有很多任意大小的数组。这是一个正方形阵列。我正在尝试掌握如何像a 而不是a 那样对角地遍历(我已经知道该怎么做)。到目前为止,我有以下代码: 我有三个循环,因为这是我做另一个对角线的方式: 在尝试中,我不断超越边界并获取ElementOutOfBounds异常。假设阵列如下(3x3而不是500x500): 我想将以下内容打印为字符串: 先前的SO问题对于整数数组也有类似的问题,解决方