将多重嵌套数组恢复为一个数组

Posted FunPR

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将多重嵌套数组恢复为一个数组相关的知识,希望对你有一定的参考价值。

问题:给定一个任意多重嵌套数组,把它恢复为一个完整的数组,没有嵌套。

样例:

Input

steamrollArray([[["a"]], [["b"]]])

steamrollArray([1, [2], [3, [[4]]]])

Output

["a", "b"]

[1, 2, 3, 4]

 

实现:利用dfs搜索,一步步找是否是数组(Array.isArray(arr)判断是否是数组)

代码如下:

 1 function steamrollArray(arr) {
 2   var newArr = [];
 3   function dfsArray(arr) {
 4     for(var i = 0; i < arr.length; i++) {
 5       if(!Array.isArray(arr[i])) {
 6         newArr.push(arr[i]);
 7       } else {
 8         dfsArray(arr[i]);
 9       }
10     }
11   }
12   dfsArray(arr);
13   return newArr;
14 }

 

以上是关于将多重嵌套数组恢复为一个数组的主要内容,如果未能解决你的问题,请参考以下文章

如何将 react-hook-form 用于嵌套数组

10个JavaScript代码片段,使你更加容易前端开发。

10个JavaScript代码片段,使你更加容易前端开发。

Pandas:希望创建一个多重嵌套字典

如何在 Ios 中解析数组数据中的嵌套 Json 对象

@RequestBody jackson解析复杂的传入值的一个坑;jackson解析迭代数组;jackson多重数组;jakson数组