简化嵌套数组JavaScript

假设我们有一个数组数组,其中包含一些这样的元素-

const arr = [3, 5, 7, 2, [4, NaN, null, 4, 8, [3, undefined, 24, null], null, 5, 1], NaN, 45, 2, 1];

我们的工作是编写一个递归函数,该函数接受此嵌套数组,并将数组中的所有fale值(NaN,undefined和null)替换为0。

因此,让我们为该函数编写代码-

示例

const arr = [3, 5, 7, 2, [4, NaN, null, 4, 8, [3, undefined, 24, null],
null, 5, 1], NaN, 45, 2, 1];
const recursiveSimplify = (arr) => {
   for(let i = 0; i < arr.length; i++){
      if(Array.isArray(arr[i])){
         recursiveSimplify(arr[i]);
      }else if(!arr[i]){
         arr[i] = 0
      };
   };
};
recursiveSimplify(arr);
console.log(arr);

输出结果

控制台中的输出将为-

[
   3,
   5,
   7,
   2,
[ 4, 0, 0, 4, 8, [ 3, 0, 24, 0 ], 0, 5, 1 ],
0,
45,
2,
1
]
猜你喜欢