如何在 JavaScript 中从数组中删除空元素
答案:使用filter()
方法
您可以简单地使用 filter()
方法从 JavaScript 数组中删除空元素(或虚假值)。 假值是在布尔上下文中被视为假的值。
JavaScript 中的虚假值包括一个空字符串 ""
, false
, 0
, null
, undefined
, and NaN
。
让我们看看下面的例子来了解它的基本工作原理:
// Sample array
var arr = [1,2,,3,,-4,"",null,,0,,false,undefined,5,,-5,6,"",7,,];
// 执行过滤
var filtered = arr.filter(elm => elm);
console.log(filtered); // Prints: [1, 2, 3, -4, 5, -5, 6, 7]
在上面的示例中,值 0 也从数组中删除,因为它是假值。 但是,如果你想保留它,你可以定义一个自定义过滤器回调函数,如下所示:
// Sample array
var arr = [1,2,,3,,-4,"",null,,0,,false,undefined,5,,-5,6,"",7,,];
// 定义自定义过滤函数
function myFilter(elm){
return (elm != null && elm !== false && elm !== "");
}
// 执行过滤
var filtered = arr.filter(myFilter);
console.log(filtered); // Prints: [1, 2, 3, -4, 0, 5, -5, 6, 7]
由于 null == undefined
是 true
elm != null
将捕获 null
和 undefined
值。
此外,请查看 箭头函数上的教程,了解如何使用粗箭头 (=>
) 表示法在 JavaScript 中编写简洁明了的函数表达式。
FAQ 相关问题解答
以下是与此主题相关的更多常见问题解答:
Advertisements