从JavaScript中的数组中删除所有空索引

假设我们有一个这样的文字数组-

const arr = [4, 6, , 45, 3, 345, , 56, 6];

我们需要编写一个JavaScript函数来接收一个这样的数组,并就地从数组中删除所有未定义的元素。

我们只需要删除未定义的和空的值,而不是所有虚假的值。

我们将使用for循环遍历数组,并使用Array.prototype.splice()删除未定义的元素。

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

示例

为此的代码将是-

const arr = [4, 6, , 45, 3, 345, , 56, 6];
const eliminateUndefined = arr => {
   for(let i = 0; i < arr.length; ){
      if(typeof arr[i] !== 'undefined'){
         i++;
         continue;
      };
      arr.splice(i, 1);
   };
};
eliminateUndefined(arr);
console.log(arr);

输出结果

控制台中的输出将为-

[
   4, 6, 45, 3,
   345, 56, 6
]