Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/daliborgogic/functional
Functional JavaScript
https://github.com/daliborgogic/functional
functional javascript module modules
Last synced: 17 days ago
JSON representation
Functional JavaScript
- Host: GitHub
- URL: https://github.com/daliborgogic/functional
- Owner: daliborgogic
- Created: 2018-07-22T14:20:10.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-01-04T21:37:41.000Z (almost 2 years ago)
- Last Synced: 2024-10-17T18:18:36.829Z (27 days ago)
- Topics: functional, javascript, module, modules
- Language: JavaScript
- Homepage:
- Size: 561 KB
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# functional
> Functional JavaScript
### Installation
In a browser e.g.
```html
import { head } from './array.mjs'
// Get first element
const first = head(['foo', 'bar'])
console.log(first)
// => foo```
In Node.js:
The ```--experimental-modules``` flag can be used to enable features for loading ESM modules.
```javascript
$ npm init -y
$ npm i daliborgogic/functional
$ touch index.mjs// index.mjs
import { last } from './node_modules/functional/array'// Get last element
const rear = last(['foo', 'bar'])
console.log(rear)$ node --experimental-modules index.mjs
> bar
```### Array
`combine(array)` Combine multiple arrays into one array.
`compact(array)` Returns a copy of the array with all falsy values removed.
`contains(array, value)` Returns true if the value is present in the array.
`difference(array, others)` Similar to without, but returns the values from array that are not present in the other arrays.
`head(array)` Gets the first element of `array`.
`initial(array)` Returns everything but the last entry of the array.
`intersection(arrays)` Computes the list of values that are the intersection of all the arrays. Each value in the result is present in each of the arrays.
`last(array)` Returns the last element of an array.
`sortedIndex(array, value)` Determine the index at which the value should be inserted into the array in order to maintain the array's sorted order.
`tail(array)` Returns everything but the first entry of the array.
`toArray(arrayLike)` Returns a real Array. Useful for transmuting the arguments object.
`union(arrays)` Computes the union of the passed-in arrays: the list of unique items, in order, that are present in one or more of the arrays.
`unique(array)` Produces a duplicate-free version of the array.
`without(array, values)` Returns a copy of the array with all instances of the values removed.
### Object
`getValues(object)` Returns an array with the object's values.
`merge(objects)` Combine multiple objects into a new object.
`toMap(object)`Convert an Object to a Map.
### Math
`min(array)` Returns the minimum value in the array.
`max(array)` Returns the maximum value in the array.
`sum(array)` Returns the sum of all values in the array.
`product(array)` Returns the product of all values in the array.
### Decorators
`not(function)` Creates a new function returning the opposite of the function provided as its argument.
`maybe(function)` Returns a new function that won't execute if not enough arguments are provided.
`once(function)` Returns a new function that won't execute more than once.
`curry(function)` Curries a function.
`pipeline(functions)` Returns the composition of multiple functions from left to right.