A collection of amazing functions:
all(array)
- Returns
true
if all values in the array are true
all()
// => true
all(true)
// => true
all(false)
// => false
all([true,true])
// => true
all([true,false])
// => false
all(array, func)
- Returns
true
if all values in the array are true when applied to func
all(4, i => i <= 4)
// => true
all(4, i => i > 4)
// => false
all([2,4], i => i <= 2)
// => false
all([2,4], i => i <= 4)
// => true
any(array)
- Returns
true
if at least one in the values in the array is true
any()
// => false
any(true)
// => true
any(false)
// => false
any([false,false])
// => false
any([true,false])
// => true
any(array, func)
- Returns
true
if at least one in the values in the array is true when applied to func
any(4, i => i <= 4)
// => true
any(4, i => i > 4)
// => false
any([2,4], i => i <= 2)
// => true
any([2,4], i => i <= 4)
// => true
any([2,4], i => i <= 1)
// => false
apply(f, [val₁, val₂, val₃, …])
- returns f(val₁, val₂, val₃, …)
apply(a => a + 2, 1)
// => 3
apply(a => a + 2, [1])
// => 3
apply((a, b) => a + b, [1,2])
// => 3
apply((a, b, c) => a + b + c, [1,2,3])
// => 6
composition(f₁, f₂, f₃, …)
- returns a composition of the functions f₁, f₂, f₃, …
composition()(4)
// => 4
composition(a => a + 2)(4)
// => 6
composition(a => a + 2, a => a * 3)(4)
// => 18
composition(a => a + 2, a => a * 3, a => a / 2)(4)
// => 9
contains(data, value)
- returns
true
if value is contained in data
contains([1,2,3], 2)
// => true
contains([1,2,3], 8)
// => false
contains({"a":1,"b":2}, "a")
// => true
contains({"a":1,"b":2}, "c")
// => false
contains(1, 1)
// => true
delete_duplicates(iterable)
- deletes all duplicates from list.
delete_duplicates([1,1,3])
// => [1,3]
delete_duplicates([1,7,8,4,3,4,1,9,9,2])
// => [1,7,8,4,3,9,2]
delete_duplicates([])
// => []
delete_duplicates([{"a":2,"b":3},{"a":2}], "a")
// => [{"a":2}]
delete_duplicates([{"a":2,"b":3},{"a":2}], o => o.a)
// => [{"a":2}]
filter(data, crit)
- picks out all elements xₑ of data for which crit(data[e], e) is True
filter(v => v < 3, [1,2,3])
// => [1,2]
filter(v => v < 3, 1)
// => [1]
filter(v => v < 3, 5)
// => []
filter(v => v < 3, {"a":2,"b":5})
// => {"a":2}
filter((v, index) => v == index, [0,1,2,4])
// => [0,1,2]
filter((v, index) => v == index, 0)
// => [0]
filter((v, index) => v == index, 1)
// => []
filter((v, index) => v == index, {"a":"a","b":"c"})
// => {"a":"a"}
first(1)
// => 1
first([1,2,3])
// => 1
first({"a":1,"b":2})
// => 1
getter()({"a":2})
// => {"a":2}
getter("a")({"a":2})
// => 2
getter(["a","b"])({"a":2,"b":3})
// => [2,3]
getter({"x":"a","z":"b"})({"a":2,"b":3})
// => {"x":2,"z":3}
getter(a => a + 2)(0)
// => 2
getter([null,null])(0)
// => [2,4]
getter({})(0)
// => {"a":2,"b":4}
group_by([1,1,2,3])
// => {"1":[1,1],"2":[2],"3":[3]}
group_by([{"a":2},{"a":3},{"a":2,"b":4}], "a")
// => {"2":[{"a":2},{"a":2,"b":4}],"3":[{"a":3}]}
group_by([{"a":2},{"a":3},{"a":2,"b":4}], v => v.a)
// => {"2":[{"a":2},{"a":2,"b":4}],"3":[{"a":3}]}
group_by({"a":1,"b":1,"c":2,"d":3})
// => {"1":{"a":1,"b":1},"2":{"c":2},"3":{"d":3}}
group_by({"x":{"a":2},"y":{"a":3},"z":{"a":2,"b":4}}, "a")
// => {"2":{"x":{"a":2},"z":{"a":2,"b":4}},"3":{"y":{"a":3}}}
group_by({"x":{"a":2},"y":{"a":3},"z":{"a":2,"b":4}}, v => v.a)
// => {"2":{"x":{"a":2},"z":{"a":2,"b":4}},"3":{"y":{"a":3}}}
group_by([1,1,2,2,3], v => v, array => array.reduce((a, b) => a + b, 0))
// => {"1":2,"2":4,"3":3}
identity(val)
- gives val (the identity operation)
identity()
// => null
identity(2)
// => 2
identity([1,2,3])
// => [1,2,3]
is_array("a")
// => false
is_array(0)
// => false
is_array([])
// => true
is_array({})
// => false
is_array(null)
// => false
is_array()
// => false
is_function("a")
// => false
is_function(0)
// => false
is_function([])
// => false
is_function({})
// => false
is_function(null)
// => false
is_function()
// => false
is_function()
// => false
is_function(() => 1)
// => true
is_function(function () {})
// => true
is_iterator([1, 2, 3])
// => false
function* iter() {yield 1}
is_iterator(iter())
// => true
is_null("a")
// => false
is_null(0)
// => false
is_null([])
// => false
is_null({})
// => false
is_null(null)
// => true
is_null()
// => true
is_object("a")
// => false
is_object(0)
// => false
is_object([])
// => false
is_object({})
// => true
is_object({"3":1,"4":2,"5":3})
// => true
is_object(null)
// => false
is_object()
// => false
items({})
// => []
items({"a":1})
// => [["a",1]]
items({"a":1}, {"b":2})
// => [["a",1],["b",2]]
items({"a":1}, {"b":2}, {"c":3})
// => [["a",1],["b",2],["c",3]]
items({"a":1,"b":2}, {"b":3})
// => [["a",1],["b",2],["b",3]]
key_drop({"a":"b","c":"d","e":"f","k":"p"}, "a")
// => {"c":"d","e":"f","k":"p"}
key_drop({"a":"b","c":"d","e":"f","k":"p"}, ["c","k"])
// => {"a":"b","e":"f"}
key_drop({"a":"b","c":"d","e":"f","k":"p"}, ["a","c","z"])
// => {"e":"f","k":"p"}
key_drop({"a":"b","c":"d","e":"f","k":"p"})
// => {"a":"b","c":"d","e":"f","k":"p"}
key_take({"a":"b","c":"d","e":"f"}, "a")
// => {"a":"b"}
key_take({"a":"b","c":"d","e":"f"}, ["a","c"])
// => {"a":"b","c":"d"}
key_take({"a":"b","c":"d","e":"f"}, ["a","c","z"])
// => {"a":"b","c":"d"}
key_take({"a":"b","c":"d","e":"f"})
// => {"a":"b","c":"d","e":"f"}
key_take({"a":"b","c":"d","e":"f"}, ["a","c","z","j"], 3)
// => {"a":"b","c":"d","z":3,"j":3}
key_take({"a":"b","c":"d","e":"f"}, ["a","c","z","j"], null)
// => {"a":"b","c":"d","z":null,"j":null}
keys({"a":"b","c":"d","e":"f"})
// => ["a","c","e"]
last(1)
// => 1
last([1,2,3])
// => 3
last({"a":1,"b":2})
// => 2
length()
// => 0
length(1)
// => 1
length("foo")
// => 1
length([1])
// => 1
length([1,2,3])
// => 3
length({"a":2})
// => 1
length({"a":2,"b":3})
// => 2
map(v => v + 2, [1,2,3])
// => [3,4,5]
map(v => v + 2, 1)
// => [3]
map(v => v + 2, {"a":3,"b":5})
// => {"a":5,"b":7}
map((v, index) => v + index, [1,2,3])
// => [1,3,5]
map((v, index) => v + index, 1)
// => [1]
map((v, index) => v + index, {"a":3})
// => {"a":"3a"}
merge()
// => {}
merge({"a":1})
// => {"a":1}
merge({"a":1}, {"b":2})
// => {"a":1,"b":2}
merge({"a":1}, {"b":2}, {"c":3})
// => {"a":1,"b":2,"c":3}
merge({"a":1,"b":2}, {"b":3})
// => {"a":1,"b":3}
nest(s => s + "b", "a", 0)
// => "a"
nest(s => s + "b", "a", 1)
// => "ab"
nest(s => s + "b", "a", 5)
// => "abbbbb"
object_map(v => v, v => v + 2, [1,2,3])
// => {"1":3,"2":4,"3":5}
object_map(v => v, v => v + 2, 1)
// => {"1":3}
object_map((v, i) => i + 1, (v, i) => v + 2, [4,5,6])
// => {"1":6,"2":7,"3":8}
object_map((v, i) => i + 1, (v, i) => v + 2, 3)
// => {"1":5}
object_map((v, i) => i + 1, (v, i) => v + 2, {})
// => {"1":3,"2":4}
ordered_object([["a",2]])
// => {"a":2}
ordered_object([["z",2],["b",3]])
// => {"z":2,"b":3}
ordered_object([["z",2],["b",3],["b",4]])
// => {"z":2,"b":4}
part({"person":{"pk.0":{"pk":"pk.0","full_name":"Deanna Gardner"},"pk.1":{"pk":"pk.1","full_name":"Brian Rodriguez"},"pk.2":{"pk":"pk.2","full_name":"Rebecca Burke"},"pk.3":{"pk":"pk.3","full_name":"Brian Taylor"},"pk.4":{"pk":"pk.4","full_name":"Heather Watkins"},"pk.5":{"pk":"pk.5","full_name":"Chris Villegas"},"pk.6":{"pk":"pk.6","full_name":"Danielle Henderson"},"pk.7":{"pk":"pk.7","full_name":"Matthew Ramirez"}},"transaction":{"pk.0":{"pk":"pk.0","amount":370},"pk.1":{"pk":"pk.1","amount":930},"pk.2":{"pk":"pk.2","amount":740},"pk.3":{"pk":"pk.3","amount":560}}}, "person", "pk.0", "full_name")
// => ["Deanna Gardner"]
part({"person":{"pk.0":{"pk":"pk.0","full_name":"Deanna Gardner"},"pk.1":{"pk":"pk.1","full_name":"Brian Rodriguez"},"pk.2":{"pk":"pk.2","full_name":"Rebecca Burke"},"pk.3":{"pk":"pk.3","full_name":"Brian Taylor"},"pk.4":{"pk":"pk.4","full_name":"Heather Watkins"},"pk.5":{"pk":"pk.5","full_name":"Chris Villegas"},"pk.6":{"pk":"pk.6","full_name":"Danielle Henderson"},"pk.7":{"pk":"pk.7","full_name":"Matthew Ramirez"}},"transaction":{"pk.0":{"pk":"pk.0","amount":370},"pk.1":{"pk":"pk.1","amount":930},"pk.2":{"pk":"pk.2","amount":740},"pk.3":{"pk":"pk.3","amount":560}}}, "person", ["pk.0","pk.1"], "full_name")
// => ["Deanna Gardner","Brian Rodriguez"]
part({"person":{"pk.0":{"pk":"pk.0","full_name":"Deanna Gardner"},"pk.1":{"pk":"pk.1","full_name":"Brian Rodriguez"},"pk.2":{"pk":"pk.2","full_name":"Rebecca Burke"},"pk.3":{"pk":"pk.3","full_name":"Brian Taylor"},"pk.4":{"pk":"pk.4","full_name":"Heather Watkins"},"pk.5":{"pk":"pk.5","full_name":"Chris Villegas"},"pk.6":{"pk":"pk.6","full_name":"Danielle Henderson"},"pk.7":{"pk":"pk.7","full_name":"Matthew Ramirez"}},"transaction":{"pk.0":{"pk":"pk.0","amount":370},"pk.1":{"pk":"pk.1","amount":930},"pk.2":{"pk":"pk.2","amount":740},"pk.3":{"pk":"pk.3","amount":560}}}, null, "pk.0", "pk")
// => ["pk.0","pk.0"]
part({"person":{"pk.0":{"pk":"pk.0","full_name":"Deanna Gardner"},"pk.1":{"pk":"pk.1","full_name":"Brian Rodriguez"},"pk.2":{"pk":"pk.2","full_name":"Rebecca Burke"},"pk.3":{"pk":"pk.3","full_name":"Brian Taylor"},"pk.4":{"pk":"pk.4","full_name":"Heather Watkins"},"pk.5":{"pk":"pk.5","full_name":"Chris Villegas"},"pk.6":{"pk":"pk.6","full_name":"Danielle Henderson"},"pk.7":{"pk":"pk.7","full_name":"Matthew Ramirez"}},"transaction":{"pk.0":{"pk":"pk.0","amount":370},"pk.1":{"pk":"pk.1","amount":930},"pk.2":{"pk":"pk.2","amount":740},"pk.3":{"pk":"pk.3","amount":560}}}, "person", ["pk.1","pk.7"])
// => [{"pk":"pk.1","full_name":"Brian Rodriguez"},{"pk":"pk.7","full_name":"Matthew Ramirez"}]
range(0)
// => []
range(5)
// => [0,1,2,3,4]
range(0, 0)
// => [0]
range(1, 5)
// => [1,2,3,4,5]
range(0, 4)
// => [0,1,2,3,4]
range(0, 4, 2)
// => [0,2,4]
repeat(1)
// => [1]
repeat(1, 3)
// => [1,1,1]
repeat(1, 0)
// => []
riffle(iterable, separator)
- riffle separator between successive elements in a list
riffle([1,2,3], "s")
// => [1,"s",2,"s",3]
riffle([1], "s")
// => [1]
riffle([], "s")
// => []
scan(v => console.log(a), [1, 2, 3])
1
2
3
// =>
scan(v => console.log(a), {a:2, b:3, c:4})
2
3
4
// =>
scan((v, i) => console.log(i), [1, 2, 3])
0
1
2
// =>
scan((v, i) => console.log(i), {a:2, b:3, c:4})
a
b
c
// =>
sort([3,1,2])
// => [1,2,3]
sort([3,1,2], (a, b) => a > b)
// => [1,2,3]
sort([3,1,2], (a, b) => a < b)
// => [3,2,1]
sort({"a":3,"b":1,"c":2})
// => [1,2,3]
sort({"a":3,"b":1,"c":2}, (a, b) => a > b)
// => [1,2,3]
sort({"a":3,"b":1,"c":2}, (a, b) => a < b)
// => [3,2,1]
// => [3,1,2]
// => {"a":3,"b":1,"c":2}
sort_by([4,3,10,2])
// => [2,3,4,10]
sort_by([[2,"b"],[1,"a"]], arr => arr[0])
// => [[1,"a"],[2,"b"]]
sort_by([[2,3],[2,1],[1,1]], [null,null])
// => [[1,1],[2,1],[2,3]]
sort_by([[2,3],[2,1],[1,1]], [0,1])
// => [[1,1],[2,1],[2,3]]
sort_by([{"a":2},{"a":3},{"a":1}], "a")
// => [{"a":1},{"a":2},{"a":3}]
sort_by([{"a":2,"b":3},{"a":2,"b":1},{"a":1,"b":1}], ["a","b"])
// => [{"a":1,"b":1},{"a":2,"b":1},{"a":2,"b":3}]
to_array(0)
// => [0]
to_array("a")
// => ["a"]
to_array([0,1,2,[3,4],{"a":5}])
// => [0,1,2,[3,4],{"a":5}]
to_array({"a":1,"b":2,"c":[3,4],"d":{"a":5}})
// => [1,2,[3,4],{"a":5}]
to_array()
// => []
to_array("", 0, 1, 2, 3)
// => ["",0,1,2,3]
to_array("", 0, 1, [2,3], 4)
// => ["",0,1,2,3,4]
to_array("", 0, 1, [2,3], {"a":4,"b":5})
// => ["",0,1,2,3,4,5]
values({"a":"b","c":"d","e":"f"})
// => ["b","d","f"]
zip(array1, array2, ...)
- returns [[array1[0], array2[0], ...], [array1[1], array2[1], ...], ...]
zip([1,2,3], [4,5,6])
// => [[1,4],[2,5],[3,6]]