VOOZH about

URL: https://www.geeksforgeeks.org/javascript/javascript-program-to-remove-empty-strings-from-array-without-loop/

⇱ JavaScript Program to Remove Empty Strings from Array Without Loop - GeeksforGeeks


  • Courses
  • Tutorials
  • Interview Prep

JavaScript Program to Remove Empty Strings from Array Without Loop

Last Updated : 23 Jul, 2025

Given an array with values and empty strings, our task is to remove empty strings from an array while keeping a record of the removed elements without using explicit loops.

Example:

Input: Array = ["hello", "", "world", "", "!", " "];
Output: Cleaned Array: [ 'hello', 'world', '!', ' ' ] Removed Elements: [ '', '' ]

Below are the approaches to remove empty strings from the array while keeping a record Without Loop in JavaScript:

Using reduce

In this approach, we usereduce to iterate through the array, accumulate non-empty strings in one array, and collect removed elements in another array.

Example: The below code example uses reduce to remove empty strings from array


Output
Cleaned Array: [ 'hello', 'world', '!', ' ' ]
Removed Elements: [ '', '' ]

Time complexity: O(n)

Auxiliary Space: O(n)

Using filter

In this approach we use filter to create a cleaned array of non-empty strings and another filter to create an array of empty strings.

Example: The below code example is a practical implementation to remove empty strings from array using filter with map.


Output
Cleaned Array: [ 'hello', 'world', '!', ' ' ]
Removed Elements: [ '', '' ]

Time Complexity: O(n)

Auxiliary Space: O(n)

Using flatMap

In this approach, we use flatMap to create a combined operation of filtering and mapping, where we can conditionally return values or empty arrays, effectively achieving the desired result.

Example: The below code example uses flatMap to remove empty strings from the array:


Output
Cleaned Array: [ 'hello', 'world', '!', ' ' ]
Removed Elements: [ '', '' ]

Time Complexity: O(n)

Auxiliary Space: O(n)

Using Array.prototype.partition

The partition method is not a built-in JavaScript method but can be implemented as a custom utility function. This method can split an array into two arrays based on a predicate function, separating elements that satisfy the predicate from those that don't. Here, we'll use it to separate non-empty strings from empty strings.

Example:


Output
Cleaned Array: [ 'hello', 'world', '!', ' ' ]
Removed Elements: [ '', '' ]


Comment