在 JavaScript 中展平深层嵌套的文字数组

javascriptweb developmentfront end technologyobject oriented programming更新于 2024/2/22 5:32:17

我们需要编写一个 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
]

相关文章


有用资源