在 JS 上迭代带有空格的数组时出现问题

Problem iterating an array with empty spaces on JS

对不起我的英语。

我是 Javascript 的新手,我正在尝试清理阵列。例如:

Input:

-Hello world!
-
-123
-
-abc

Output:

-Hello world!
-123
-abc

实际上,如果我尝试使用 array.forEach(item => {console.log(item);} 它会起作用。

但是当我做类似的事情时:

if(item === "" || item === undefined || item === null){
array.forEach(function(value, index){

array.splice(index, 1);

} }

或者试图给这个空元素一个值,控制台抛出一个错误,比如“无法读取未定义的 属性 'array'”

我该如何解决这个问题?

希望你能帮助我,在此先感谢!

使用filter方法

const data = ["", undefined, 2, "abc", null];

// Method 1 filter method
const res = data.filter((x) => x);

// Alternatively
const res2 = data.filter(Boolean);

console.log(res);
console.log(res2);