我们需要编写一个JavaScript函数,该函数将文字的嵌套数组作为唯一参数。该函数应构造一个新数组,该数组包含输入数组中存在的所有文字元素,但不嵌套。
例如-
如果输入数组是-
const arr = [ 1, 3, [5, 6, [7, [6, 5], 4], 3], [4] ];
那么输出数组应该是-
const output = [1, 3, 5, 6, 7, 6, 5, 4, 3, 4];
以下是代码-
const arr = [ 1, 3, [5, 6, [7, [6, 5], 4], 3], [4] ]; const flattenArray = (arr = []) => { const res = []; for(let i = 0; i < arr.length; i++){ const el = arr[i]; if(Array.isArray(el)){ res.push(...flattenArray(el)); }else{ res.push(el); }; }; return res; }; console.log(flattenArray(arr));
输出结果
以下是控制台上的输出-
[ 1, 3, 5, 6, 7, 6, 5, 4, 3, 4 ]