Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jakxz/functional-or
functional OR in js
https://github.com/jakxz/functional-or
functional-programming javascript or
Last synced: about 1 month ago
JSON representation
functional OR in js
- Host: GitHub
- URL: https://github.com/jakxz/functional-or
- Owner: JaKXz
- Created: 2020-05-01T04:00:34.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-04-10T17:01:03.000Z (over 1 year ago)
- Last Synced: 2024-10-14T18:31:00.686Z (3 months ago)
- Topics: functional-programming, javascript, or
- Language: JavaScript
- Homepage: https://npm.im/@jakxz/functional-or
- Size: 527 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
## @jakxz/functional-or
### functionalOr(...fns) ⇒
function
⏏A utility for composing a set of predicate functions that check against the
curried data to find if one of the predicate conditions is met. This is most
helpful when your predicates are relatively complex and you want to compose
the checks in existing piped or composed functions; for the simplest example,
if you have:```js
const isFoo = (str) => str === "foo";
const isBar = (str) => str === "bar";
```you can compose these functions into:
```js
import or from "@jakxz/functional-or";const isFooOrBar = or(isFoo, isBar);
```and use it like so:
```js
const results = ["foo", "bar", "baz"].filter(isFooOrBar);
```If you don't want to pass any functions at all, you can just check the truthyness
of your data args:```js
const isAnyTruthy = or()("x", "y", 0, null);
```**Kind**: Exported function
| Param | Description |
| ------ | ----------------------------------------------- |
| ...fns | pass in any number of functions or none at all. |