JSFiddle - React, Tailwind, and code Playground
JavaScript
function filter(list, fn) {
if (list.length === 0) {
return []
} else {
if (fn(list[0])) {
return [
list[0],
...filter(list.slice(1), fn)
]
} else {
return filter(list.slice(1), fn)
}
}
}
console.log(filter([1, 2, 3, 4], x => x % 2 === 0))