Bird
Raised Fist0
Javascriptprogramming~5 mins

Filter method in Javascript - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the filter method do in JavaScript?
The filter method creates a new array with all elements that pass a test implemented by a provided function.
Click to reveal answer
beginner
How do you use the filter method syntax?
You call array.filter(callback(element, index, array)). The callback returns true to keep the element, or false to remove it.
Click to reveal answer
beginner
What type of value must the callback function return when used with filter?
The callback must return a boolean value: true to keep the element, false to exclude it from the new array.
Click to reveal answer
beginner
Can the filter method change the original array?
No, filter does not modify the original array. It returns a new array with the filtered elements.
Click to reveal answer
beginner
Give a simple example of using filter to get even numbers from an array.
Example:<br><code>const numbers = [1, 2, 3, 4];<br>const evens = numbers.filter(n =&gt; n % 2 === 0);<br>console.log(evens); // [2, 4]</code>
Click to reveal answer
What does the filter method return?
AA new array with elements that pass the test
BThe original array modified
CA single element from the array
DUndefined
Which value should the callback function return to keep an element?
Atrue
Bfalse
Cnull
Dundefined
Does filter change the original array?
AOnly if you assign it back
BYes, it modifies the original array
CNo, it returns a new array
DSometimes, depends on the callback
What will [1, 2, 3].filter(n => n > 2) return?
A[1, 2, 3]
B[3]
C[1, 2]
D[]
Which of these is a valid use of filter?
Aarray.filter(element =&gt; element.length)
Barray.filter(element =&gt; element * 2)
Carray.filter(element =&gt; console.log(element))
Darray.filter(element =&gt; element === 5)
Explain how the filter method works and what it returns.
Think about how you pick items from a list based on a rule.
You got /4 concepts.
    Write a simple example using filter to select only strings longer than 3 characters from an array.
    Use <code>str.length &gt; 3</code> inside the callback.
    You got /4 concepts.

      Practice

      (1/5)
      1. What does the JavaScript filter method do?
      easy
      A. Sorts the array in ascending order
      B. Creates a new array with elements that pass a test
      C. Changes the original array by removing elements
      D. Combines all elements into a single value

      Solution

      1. Step 1: Understand the purpose of filter

        The filter method tests each element with a function and keeps only those that return true.
      2. Step 2: Compare options with filter behavior

        Only Creates a new array with elements that pass a test describes creating a new array with elements that pass the test, which matches filter's behavior.
      3. Final Answer:

        Creates a new array with elements that pass a test -> Option B
      4. Quick Check:

        filter creates new filtered array = C [OK]
      Hint: Filter keeps items passing test, original array stays same [OK]
      Common Mistakes:
      • Thinking filter changes original array
      • Confusing filter with sort or reduce
      • Believing filter combines elements
      2. Which of the following is the correct syntax to filter an array arr for values greater than 10?
      easy
      A. arr.filter(x => {x > 10});
      B. arr.filter(x > 10);
      C. arr.filter(x => x > 10);
      D. arr.filter(x => x > 10)();

      Solution

      1. Step 1: Check arrow function syntax inside filter

        The filter method requires a function that returns true or false. The arrow function must return the condition directly or with a return statement.
      2. Step 2: Validate each option's syntax

        arr.filter(x => x > 10); uses correct arrow function syntax returning x > 10. arr.filter(x > 10); misses the function. arr.filter(x => {x > 10}); uses braces but no return, so returns undefined. arr.filter(x => x > 10)(); adds extra parentheses causing error.
      3. Final Answer:

        arr.filter(x => x > 10); -> Option C
      4. Quick Check:

        Correct arrow function syntax = A [OK]
      Hint: Arrow function must return condition inside filter [OK]
      Common Mistakes:
      • Omitting arrow function syntax
      • Using braces without return in arrow function
      • Adding extra parentheses after filter call
      3. What is the output of the following code?
      const nums = [5, 12, 8, 130, 44];
      const result = nums.filter(num => num > 10);
      console.log(result);
      medium
      A. [5, 8]
      B. []
      C. [5, 12, 8, 130, 44]
      D. [12, 130, 44]

      Solution

      1. Step 1: Identify the filter condition

        The filter keeps numbers greater than 10.
      2. Step 2: Check each number in the array

        5 (no), 12 (yes), 8 (no), 130 (yes), 44 (yes). So filtered array is [12, 130, 44].
      3. Final Answer:

        [12, 130, 44] -> Option D
      4. Quick Check:

        Filter > 10 = [12,130,44] [OK]
      Hint: Filter keeps only items passing condition [OK]
      Common Mistakes:
      • Including numbers not greater than 10
      • Returning original array instead of filtered
      • Confusing filter with map or reduce output
      4. Find the error in this code that tries to filter even numbers:
      const numbers = [1, 2, 3, 4, 5];
      const evens = numbers.filter(num => { num % 2 === 0 });
      console.log(evens);
      medium
      A. Missing return statement inside arrow function
      B. filter method does not exist on arrays
      C. num % 2 === 0 is incorrect syntax
      D. Array should be declared with let, not const

      Solution

      1. Step 1: Analyze arrow function with braces

        When using braces in arrow functions, you must explicitly return a value.
      2. Step 2: Check the function body

        The function body has expression but no return, so it returns undefined, causing filter to keep no elements.
      3. Final Answer:

        Missing return statement inside arrow function -> Option A
      4. Quick Check:

        Arrow function with braces needs return [OK]
      Hint: Use return inside braces or remove braces in arrow function [OK]
      Common Mistakes:
      • Forgetting return inside arrow function with braces
      • Thinking filter is not an array method
      • Misunderstanding modulo operator syntax
      5. Given an array of objects:
      const people = [
        { name: 'Alice', age: 25 },
        { name: 'Bob', age: 17 },
        { name: 'Charlie', age: 19 },
        { name: 'David', age: 15 }
      ];
      
      // Filter adults (age 18 or older)
      const adults = people.filter(person => person.age >= 18);
      
      console.log(adults);

      What will be the output?
      hard
      A. [{ name: 'Alice', age: 25 }, { name: 'Charlie', age: 19 }]
      B. [{ name: 'Bob', age: 17 }, { name: 'David', age: 15 }]
      C. [{ name: 'Alice', age: 25 }, { name: 'Bob', age: 17 }, { name: 'Charlie', age: 19 }, { name: 'David', age: 15 }]
      D. []

      Solution

      1. Step 1: Understand filter condition on objects

        The filter keeps objects where person.age is 18 or more.
      2. Step 2: Check each person's age

        Alice (25) and Charlie (19) meet the condition. Bob (17) and David (15) do not.
      3. Final Answer:

        [{ name: 'Alice', age: 25 }, { name: 'Charlie', age: 19 }] -> Option A
      4. Quick Check:

        Filter adults age >= 18 = Alice, Charlie [OK]
      Hint: Filter objects by property condition inside arrow function [OK]
      Common Mistakes:
      • Filtering by name instead of age
      • Including underage people by mistake
      • Expecting filter to modify original array
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard