首页 > 解决方案 > 在 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);

} }

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

我怎样才能解决这个问题?

我希望你能帮助我,提前谢谢!

标签: javascriptarraysundefined

解决方案


使用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);


推荐阅读