假设我们有一个这样的文字数组-
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 ]