- JavaScript Basics
- JavaScript Tutorial
- JavaScript: where to write
- JavaScript: how to display
- JavaScript: keywords
- JavaScript: comments
- JavaScript: variables
- JavaScript: operators
- JavaScript: data types
- JavaScript Conditional Statements
- JavaScript: if-else
- JavaScript: switch
- JavaScript: for loop
- JavaScript: while loop
- JavaScript: do-while loop
- JavaScript: break and continue
- JavaScript Popup Boxes
- JavaScript: alert box
- JavaScript: confirm box
- JavaScript: prompt box
- JavaScript Popular Topics
- JavaScript: functions
- JavaScript: innerHTML
- JavaScript: getElementById()
- JavaScript: getElementsByClassName()
- JavaScript: getElementsByName()
- JavaScript: getElementsByTagName()
- JavaScript: querySelector()
- JavaScript: querySelectorAll()
- JavaScript: document.write()
- JavaScript: console.log()
- JavaScript: boolean
- JavaScript: events
- JavaScript: Math object
- JavaScript: Math.random()
- JavaScript: Number()
- JavaScript: parseInt()
- JavaScript: parseFloat()
- JavaScript Arrays
- JavaScript: array
- JavaScript: find length of array
- JavaScript: add element at beginning
- JavaScript: add element at end
- JavaScript: remove first element
- JavaScript: remove last element
- JavaScript: get first index
- JavaScript: get last index
- JavaScript: reverse an array
- JavaScript: sort an array
- JavaScript: concatenate arrays
- JavaScript: join()
- JavaScript: toString()
- JavaScript: from()
- JavaScript: check if value exists
- JavaScript: check if array
- JavaScript: slice an array
- JavaScript: splice()
- JavaScript: find()
- JavaScript: findIndex()
- JavaScript: entries()
- JavaScript: every()
- JavaScript: fill()
- JavaScript: filter()
- JavaScript: forEach()
- JavaScript: map()
- JavaScript Strings
- JavaScript: string
- JavaScript: length of string
- JavaScript: convert to lowercase
- JavaScript: convert to uppercase
- JavaScript: string concatenation
- JavaScript: search()
- JavaScript: indexOf()
- JavaScript: search() vs. indexOf()
- JavaScript: match()
- JavaScript: match() vs. search()
- JavaScript: replace()
- JavaScript: toString()
- JavaScript: String()
- JavaScript: includes()
- JavaScript: substr()
- JavaScript: slice string
- JavaScript: charAt()
- JavaScript: repeat()
- JavaScript: split()
- JavaScript: charCodeAt()
- JavaScript: fromCharCode()
- JavaScript: startsWith()
- JavaScript: endsWith()
- JavaScript: trim()
- JavaScript: lastIndexOf()
- JavaScript Date and Time
- JavaScript: date and time
- JavaScript: Date()
- JavaScript: getFullYear()
- JavaScript: getMonth()
- JavaScript: getDate()
- JavaScript: getDay()
- JavaScript: getHours()
- JavaScript: getMinutes()
- JavaScript: getSeconds()
- JavaScript: getMilliseconds()
- JavaScript: getTime()
- JavaScript: getUTCFullYear()
- JavaScript: getUTCMonth()
- JavaScript: getUTCDate()
- JavaScript: getUTCDay()
- JavaScript: getUTCHours()
- JavaScript: getUTCMinutes()
- JavaScript: getUTCSeconds()
- JavaScript: getUTCMilliseconds()
- JavaScript: toDateString()
- JavaScript: toLocaleDateString()
- JavaScript: toLocaleTimeString()
- JavaScript: toLocaleString()
- JavaScript: toUTCString()
- JavaScript: getTimezoneOffset()
- JavaScript: toISOString()
- JavaScript Regular Expression
- JavaScript: regular expression
- JavaScript: RegEx . (dot)
- JavaScript: RegEx \w and \W
- JavaScript: RegEx \d and \D
- JavaScript: RegEx \s and \S
- JavaScript: RegEx \b and \B
- JavaScript: RegEx \0
- JavaScript: RegEx \n
- JavaScript: RegEx \xxx
- JavaScript: RegEx \xdd
- JavaScript: RegEx quantifiers
- JavaScript: RegEx test()
- JavaScript: RegEx lastIndex
- JavaScript: RegEx source
- JavaScript Programs
- JavaScript Programs
JavaScript filter(): Filter an array based on condition
The JavaScript filter() method is used when we need to check every element in an array to see if it meets the specified condition and create a new array with only those elements that meet the specified condition. For example:
<!DOCTYPE html> <html> <body> <p id="xyz"></p> <script> const mynumbers = [12, 32, 43, 5, 65, 46]; document.getElementById("xyz").innerHTML = mynumbers.filter(even); function even(x) { return x%2==0; } </script> </body> </html>
As you can see from the above example, using the filter() method, I've filtered the array mynumbers with even numbers.
Note: The original array does not get affected by the filter() method.
JavaScript filter() syntax
The syntax of the filter() method in JavaScript is:
array.filter(functionName(currentElementValue, currentElementIndex, currentElementArray), thisValue)
The array, functionName, and currentElementValue are required. All others are optional.
Note: The array refers to an array that is going to be filtered using the function functionName.
Note: The functionName refers to a function to execute for every element of the array.
Note: The currentElementValue basically refers to a variable that will be used as an argument to the function and that, of course, indicates the current value or element of the specified array.
Note: The currentElementIndex refers to the index of the current element.
Note: The currentElementArray refers to the array of the current element.
Note: The thisValue refers to a value passed to the specified function functionName as its this value. The default value is undefined.
JavaScript filter() array example
Let me create an example of the filter() method that uses a function with three parameters:
<!DOCTYPE html> <html> <body> <p>Odd Numbers: <span id="abc"></span></p> <script> const a = [12, 32, 43, 5, 65, 46, 19, 17, 48]; const o = a.filter(odd); function odd(num, indx, arr) { if(indx==0 || indx==(arr.length-1)) return true; return num%2!=0; } document.getElementById("abc").innerHTML = o; </script> </body> </html>
Odd Numbers:
In the above example, the first and last numbers are even numbers, that is, 12 and 48, but I've filtered the array to filter all elements except the element at the first and last index.
Here is another example of the filter() function that filters an array based on prime numbers.
<!DOCTYPE html> <html> <body> <script> const nums = [12, 32, 43, 5, 65, 46, 19, 17]; const primeNums = nums.filter(prime); function prime(num) { let count=0; for(let i=2; i<num; i++) { if(num%i == 0) { count++; break; } } if(count==0) return true; else return false; } let primeNumsLen = primeNums.length; if(primeNumsLen==0) console.log("No prime numbers found in the array"); else { console.log("List of Prime Numbers:"); for(let i=0; i<primeNumsLen; i++) console.log(primeNums[i]); } </script> </body> </html>
The snapshot given below shows the sample output produced by the above example:
« Previous Tutorial Next Tutorial »