JavaScript 从数组中删除空元素

JavaScript 从数组中删除空元素

很多时候数组中会有空元素。在本文中,我们将看到从数组中删除空元素的方法。为了从数组中删除空元素,以下是一些常见的方法:

  • 使用array.filter()方法
  • 使用array.reduce()方法
  • 使用for循环

方法1:使用array.filter()方法

该函数从给定的数组中创建一个新数组,其中包含满足参数函数条件的元素。

array.filter( function(cValue, index, arr), tValue )  

示例: 此示例从数组中移除 未定义、空值和空元素

let array = ["GFG_1", "GFG_2", null, "GFG_3",
    "", "GFG_4", undefined, "GFG_5", , , , , ,
    "GFG_6", , 4, , 5, , 6, , , ,];
console.log("original array: " + array)
 
function myGeeks() {
    let filtered = array.filter(function (el) {
        return el != null;
    });
    console.log(filtered);
}
myGeeks()

输出

original array: GFG_1,GFG_2,,GFG_3,,GFG_4,,GFG_5,,,,,,GFG_6,,4,,5,,6,,,
[
  'GFG_1', 'GFG_2',
  'GFG_3', '',
  'GFG_4', 'GFG_5',
  'GFG_6', 4,
  5,       6
]

方法2:使用 array.reduce() 方法

在这种方法中,我们将使用 reduce() 方法。使用 reduce 方法遍历数组并检查假值,然后通过使用 if 条件将其从数组中移除。

示例:

let array = ["GFG_1", "GFG_2", null, "GFG_3",
    "", "GFG_4", undefined, "GFG_5",
    , , , , , "GFG_6", , 4, , 5, , 6, , , ,];
 
console.log("original array: " + array)
 
function myGeeks() {
    let filtered = array.reduce((acc, i) => i ? [...acc, i] : acc, []);
    console.log("new array: " + filtered)
}
myGeeks()

输出

original array: GFG_1,GFG_2,,GFG_3,,GFG_4,,GFG_5,,,,,,GFG_6,,4,,5,,6,,,
new array: GFG_1,GFG_2,GFG_3,GFG_4,GFG_5,GFG_6,4,5,6

方法3:使用 for 循环

在这种方法中,我们将检查元素是否存在,如果存在则将其推送到新数组中。

示例: 在这个示例中,我们使用了上述解释的方法。

const arr = ["GFG_1", "GFG_2", null, "GFG_3",
    "", "GFG_4", undefined, "GFG_5", , , , , ,
    "GFG_6", , 4, , 5, , 6, , , ,];
 
// make a new array
// to hold non-empty values
const result = [];
 
for (let i = 0; i < arr.length; i++) {
    if (arr[i]) {
        result.push(arr[i]);
    }
}
 
console.log(result);

输出

[
  'GFG_1', 'GFG_2',
  'GFG_3', 'GFG_4',
  'GFG_5', 'GFG_6',
  4,       5,
  6
]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程