JavaScript: Remove falsey values from a given array
JavaScript fundamental (ES6 Syntax): Exercise-44 with Solution
Remove Falsey Values from Array
Write a JavaScript program to remove false values from a given array.
- Use Array.prototype.filter() to filter out falsy values (false, null, 0, "", undefined, and NaN).
Sample Solution:
JavaScript Code:
//#Source https://bit.ly/2neWfJ2
// Define a function 'compact' that takes an array 'arr' as input and returns a new array with truthy values.
const compact = arr =>
// Filter the elements of 'arr' using the 'Boolean' function to remove falsy values.
arr.filter(Boolean);
// Test the 'compact' function with two arrays and log the results.
console.log(compact([0, 1, false, 2, '', 3, 'a', 'e' * 23, NaN, 's', 34])); // Output: [1, 2, 3, 'a', 's', 34]
console.log(compact([false, NaN, 'e' * 23])); // Output: []
Output:
[1,2,3,"a","s",34] []
Visual Presentation:
Flowchart:

Live Demo:
See the Pen javascript-basic-exercise-1-44 by w3resource (@w3resource) on CodePen.
For more Practice: Solve these Related Problems:
- Write a JavaScript program that filters out all falsey values (false, 0, "", null, undefined, NaN) from an array.
- Write a JavaScript function that returns a new array containing only truthy values from the given array using Boolean casting.
- Write a JavaScript program that cleans an array by removing elements that evaluate to false in a boolean context.
Go to:
PREV : Change Function to Variadic.
NEXT : Split Values into Two Groups by Filter.
Improve this sample solution and post your code through Disqus
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.