Functions for lists
## every
every(f, arr)
Check if every item of `arr` passes function `f`.
Example:
`every(lambda i: i.endswith(".js"), ["app.js", "lib.js"]) // True`
**PARAMETERS**
| Name | Description | Default Value |
| :------------- | :------------- | :------------- |
| f | Function to execute on every item | none |
| arr | List to iterate over | none |
**RETURNS**
True or False
## filter
filter(f, arr)
Filter a list `arr` by applying a function `f` to each item.
Example:
`filter(lambda i: i.endswith(".js"), ["app.ts", "app.js", "lib.ts", "lib.js"]) // ["app.js", "lib.js"]`
**PARAMETERS**
| Name | Description | Default Value |
| :------------- | :------------- | :------------- |
| f | Function to execute on every item | none |
| arr | List to iterate over | none |
**RETURNS**
A new list containing items that passed the filter function.
## find
find(f, arr)
Find a particular item from list `arr` by a given function `f`.
Unlike `pick`, the `find` method returns a tuple of the index and the value of first item passing by `f`.
Furthermore `find` does not fail if no item passes `f`.
In this case `(-1, None)` is returned.
**PARAMETERS**
| Name | Description | Default Value |
| :------------- | :------------- | :------------- |
| f | Function to execute on every item | none |
| arr | List to iterate over | none |
**RETURNS**
Tuple (index, item)
## map
map(f, arr)
Apply a function `f` with each item of `arr` and return a new list.
Example:
`map(lambda i: i*2, [1, 2, 3]) // [2, 4, 6]`
**PARAMETERS**
| Name | Description | Default Value |
| :------------- | :------------- | :------------- |
| f | Function to execute on every item | none |
| arr | List to iterate over | none |
**RETURNS**
A new list with all mapped items.
## once
once(f, arr)
Check if exactly one item in list `arr` passes the given function `f`.
**PARAMETERS**
| Name | Description | Default Value |
| :------------- | :------------- | :------------- |
| f | Function to execute on every item | none |
| arr | List to iterate over | none |
**RETURNS**
True or False
## pick
pick(f, arr)
Pick a particular item in list `arr` by a given function `f`.
Unlike `filter`, the `pick` method returns the first item _found_ by `f`.
If no item has passed `f`, the function will _fail_.
**PARAMETERS**
| Name | Description | Default Value |
| :------------- | :------------- | :------------- |
| f | Function to execute on every item | none |
| arr | List to iterate over | none |
**RETURNS**
item
## some
some(f, arr)
Check if at least one item of `arr` passes function `f`.
Example:
`some(lambda i: i.endswith(".js"), ["app.js", "lib.ts"]) // True`
**PARAMETERS**
| Name | Description | Default Value |
| :------------- | :------------- | :------------- |
| f | Function to execute on every item | none |
| arr | List to iterate over | none |
**RETURNS**
True or False
## unique
unique(arr)
Return a new list with unique items in it.
Example:
`unique(["foo", "bar", "foo", "baz"]) // ["foo", "bar", "baz"]`
**PARAMETERS**
| Name | Description | Default Value |
| :------------- | :------------- | :------------- |
| arr | List to iterate over | none |
**RETURNS**
A new list with unique items