Reputation: 21
i just start learn javascript and to test some array code, i end make this, there is a better away to make a filter by type of value. (Sorry any mistake english is not my mother language).
var list = ["lorem1", "lorem2", "lorem3" , "lorem4", 1 ,2 ,3]
var number = 1
var type = typeof number
var numbers = list.filter(item => typeof item === type)
var words = list.filter(item => typeof item != type)
// Filter by value types
console.log(numbers)
console.log(words)
Upvotes: 2
Views: 3606
Reputation: 671
You can write a function and pass the type as argument like so:
var list = ["lorem1", "lorem2", "lorem3" , "lorem4", 1 ,2 ,3]
function filterByType(arr, type){
return arr.filter(item=> typeof item === type)
}
const words = filterByType(list, 'string')
const numbers = filterByType(list, 'number')
console.log({words, numbers})
Upvotes: 4