skald
v1.22.2
Published
Shakeable, tested javascript utility functions in a pure functional programming style
Downloads
21
Maintainers
Readme
skald
Shakeable, tested javascript utility functions in a pure functional programming style
What is it?
Short answer: Yet another utility library
Long answer: Skald is a utility library to aid in pure functional javascript programming. It's meant to be shakeable, light-weight, and 100% tested. The entire library will compile down to < 7kb before gzipping (at present) and contains ~90 functions.
How do you use it?
Here's an example of a block of a short ES6 module
const sumPlusOne = arr => arr
.map(val => val + 1)
.reduce((acc, val) => acc + val, 0);
export default sumPlusOne;
Here's an example of how that code might be written with skald
import { add, compose, mapBy, reduceBy } from 'skald';
const addOne = add(1);
const mapByAddOne = mapBy(addOne);
const reduceByAdd = reduceBy(add, 0);
const sumPlusOne = compose(reduceByAdd, mapByAddOne);
export default sumPlusOne;
It's a little more code in your module, but:
- We didn't need to declare any functions directly
- We were able to reuse a simple function like add
- The code is easy to understand
- It slims down nicely when run through a build minification
That's about it.
Functions
add(a, b) ⇒ number
Add two numbers
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | a | number | | b | number |
Example
add(1,2); //=> 3
add(2)(3); //=> 5
and(...args) ⇒ boolean
Determine if all arguments are truthy or if array is truthy
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | ...args | * |
Example
and(true, true); //=> true
and([true, true]); //=> true
and(true, true, false); //=> false
andWith(fns, val) ⇒ boolean | function
Take an array of functions (or values) and determine if all results are true given value
Kind: global function
Since: 1.10.0
| Param | Type | | --- | --- | | fns | Array | | val | * |
Example
const foo = val => val < 10;
const bar = val => val > 5;
andWith([foo, bar], 6); //=> true
andWith([foo, bar])(1); //=> false
appendTo(str, append) ⇒ function | string
Append string to the end of another string
Kind: global function
Since: 1.13.0
| Param | Type | | --- | --- | | str | string | | append | string |
Example
appendTo('foo', 'bar'); //=> 'foobar'
appendTo('bar')('baz'); //=> 'barbaz'
apply(fns, vals) ⇒ function | array
Apply functions from an array to corresponding index in other array
Kind: global function
Since: 1.11.0
| Param | Type | | --- | --- | | fns | Array | | vals | Array |
Example
const add1 = a => a + 1;
const add2 = a => a + 2;
apply([add1, add2], [0, 0]); //=> [1, 2];
apply([add1])([1, 2, 3]); //=> [2, 2, 3];
args(...vals) ⇒ Array
Returns an array of passed arguments
Kind: global function
Since: 1.16.0
| Param | Type | | --- | --- | | ...vals | * |
Example
args(1, 2, [3, 4]); //=> [1, 2, [3, 4]]
at(index, val) ⇒ *
Returns copy of entry or character at given index in string or array
Kind: global function
Since: 1.5.0
| Param | Type | | --- | --- | | index | number | | val | Array | string |
Example
at(2, 'foo'); //=> 'o'
at(1)([0, 1, 2]); //=> 1
attempt(toTry, onError) ⇒ *
Attempt something. If an error is thrown, return something else. (Wrapper for try / catch)
Kind: global function
Since: 1.7.0
| Param | Type | | --- | --- | | toTry | * | | onError | * |
Example
attempt(() => JSON.parse('<>'), false); //=> false
attempt(5, () => ({})); //=> 5
bindTo(fn, ...args) ⇒ function
Takes a function and arguments. Leaves undefined arguments unbound and binds defined arguments to their position in arguments list.
Kind: global function
Since: 1.8.0
| Param | Type | | --- | --- | | fn | function | | ...args | * |
Example
const foo = (a, b, c) = a + b + c;
bindTo(foo, 1, 2)(3); //=> 6
bindTo(foo, undefined, 1, 2)(1); //=> 4
bindTo(foo, undefined, undefined, 3)(1, 2); //=> 6
bindTo(foo, undefined, 1)(1)(1); //=> 3
call(fn, arr) ⇒ function
Execute function with array as arguments
Kind: global function
Since: 1.17.0
| Param | Type | | --- | --- | | fn | function | | arr | Array |
Example
const foo = (a, b) => a + b;
call(foo, [1, 2]) //=> 3
call(foo)([2, 3]) //=> 5
callback(cb, predicate) ⇒ *
Take two arguments and if second argument is truthy, return first.
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | cb | * | | predicate | * |
Example
callback('foo', true); //=> 'foo'
callback('foo', false); //=> null
callbackWith(cb, predicate, val) ⇒ *
Take two arguments and if second argument is truthy, return first based on val
Kind: global function
Since: 1.9.0
| Param | Type | | --- | --- | | cb | * | | predicate | * | | val | * |
Example
callbackWith(a => a, true, 3); //=> 3
callbackWith(a => a, false, 3); //=> null
concat(val) ⇒ function
Returns a function which accepts no params and returns the passed value
Kind: global function
Since: 1.16.0
| Param | Type | | --- | --- | | val | * |
Example
cast(6); //=> () = 6;
compose(...args) ⇒ function
Compose functions from right to left
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | ...args | function |
Example
compose(val => val + 1, val => val + 2); //=> val => val + 3
composeL(...args) ⇒ function
Compose functions from right to left
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | ...args | function |
Example
compose(val => val + 1, val => val + 2); //=> val => val + 3
concat(...args) ⇒ function | Array
Returns a new array, which is a merge of at least two arrays
Kind: global function
Since: 1.16.0
| Param | Type | | --- | --- | | ...args | Array |
Example
const([1, 2], [3, 4]); //=> [1, 2, 3, 4]
curry(fn, ...args) ⇒ function | *
Curry arguments to function and return new function
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | fn | function | | ...args | * |
Example
const foo = (a, b, c) => a + b + c;
curry(foo, 1, 2)(3); //=> 6
curry(foo, 1)(3, 4); //=> 8
curry(foo, 2)(3)(4); //=> 9
curry(foo)(1)(1)(1); // => 3
deepEquals(a, b) ⇒ boolean | function
Allow comparison of two objects or arrays
Kind: global function
Since: 1.4.0
| Param | Type | | --- | --- | | a | * | | b | * |
Example
deepEquals({}, {}); //=> true
deepEquals([])([]); //=> true
defaultTo(def, val) ⇒ *
Sets default value if passed value is falsy
Kind: global function
Since: 1.2.0
| Param | Type | | --- | --- | | def | * | | val | * |
Example
defaultTo(5, undefined); //=> 5
defaultTo(3)(4); //=> 4
define(fn) ⇒ function | *
Take a function with a known signature and allow arguments to be passed until it executes
Kind: global function
Update:
Since: 1.0.0
| Param | Type | | --- | --- | | fn | function |
Example
const foo = (a, b, c) => a + b + c;
const bar = define(foo);
bar(1); // (b, c) => 1 + b + c
bar(1)(2); // c => 1 + 2 + c
bar(1)(2)(3); // 6
divide(a, b) ⇒ number | function
Divide two numbers
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | a | number | | b | number |
Example
divide(9, 3); //=> 3
divide(4)(2); //=> 2
equals(a, b) ⇒ boolean | function
Determine if two values are equal
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | a | * | | b | * |
Example
equals(1, 1); //=> true
equals(1)(2); //=> false
everyBy(fn, arr) ⇒ function | boolean
Determine if all values in array satisfy function
Kind: global function
Since: 1.17.0
| Param | Type | | --- | --- | | fn | function | | arr | Array |
Example
const isTrue = val => val === true;
everyBy(isTrue, [true, true]) //=> true
everyBy(isTrue)([true, false]) //=> false
excludes(search, val) ⇒ boolean | function
Returns true if string is not in string or array
Kind: global function
Since: 1.4.0
| Param | Type | | --- | --- | | search | string | number | | val | string | Array |
Example
excludes('h', 'hello'); //=> false
excludes('a')('apple'); //=> false
executeWith(val, fn) ⇒ function | *
Create a function which executes a function based on a defined value
Kind: global function
Since: 1.11.0
| Param | Type | | --- | --- | | val | * | | fn | function |
Example
const addOne = a => a + 1;
executeOn(1, addOne); //=> 2
executeOn(2)(addOne); //=> 3
executeWith(fn, ...args) ⇒ function
Create a function which executes a function with each arg being transformed by a function
Kind: global function
Since: 1.11.0
| Param | Type | | --- | --- | | fn | function | | ...args | * |
Example
const foo = (a, b) => a + b;
const add1 = a => a + 1;
const add2 = b => b + 2;
executeWith(foo, add1, add2)(0, 0); //=> 3
executeWith(foo, add1)(0, 0); //=> 1
fillBy(val, arr) ⇒ function | arr
Fill an array with a defined value
Kind: global function
Since: 1.17.0
| Param | Type | | --- | --- | | val | val | | arr | Array |
Example
fillBy(1, [undefined, undefined]); //=> [1, 1]
fillBy(2)([undefined, undefined); //=> [2, 2]
filterBy(fn, arr) ⇒ function | Array
Filter elements in an array by function
Kind: global function
Since: 1.9.0
| Param | Type | | --- | --- | | fn | function | | arr | Array |
Example
const foo = val => val < 3;
filterBy(foo, [1, 2, 4]); //=> [1, 2]
filterBy(foo)([2,3]); //=> [2]
getEmptyArr() ⇒ Array
Returns an empty array
Kind: global function
Since: 1.16.0
Example
getEmptyArray(); //=> []
getEmptyObj() ⇒ Object
Returns an empty object
Kind: global function
Since: 1.16.0
Example
getEmptyObj(); //=> {}
getObject(prop, value) ⇒ function | Object
Get an object with single property and value
Kind: global function
Since: 1.15.0
| Param | Type | | --- | --- | | prop | string | number | | value | * |
Example
getObject('a', 1); //=> { a: 1 }
getProp('b')(2); //=> { b: 2 }
getProp(prop, obj) ⇒ function | *
Get property of an object
Kind: global function
Since: 1.15.0
| Param | Type | | --- | --- | | prop | string | number | | obj | Object |
Example
getProp('a', { a: 1 }); //=> 1
getProp('b')({ b: 2 }); //=> 2
gt(a, b) ⇒ function | boolean
Determine if first value is greater than
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | a | number | string | | b | number | string |
Example
gt(2, 1); //=> true
gt('b')('c'); //=> false
gte(a, b) ⇒ function | boolean
Determine if value is greater than or equal to other value
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | a | number | string | | b | number | string |
Example
gte(1, 1); //=> true
gte('b')('a'); //=> true
has(obj, key) ⇒ function | boolean
Return true if object has key
Kind: global function
Since: 1.9.0
| Param | Type | | --- | --- | | obj | Object | | key | string |
Example
has({ a: 1 }, 'a'); //=> true
has({ a: 1 })('a'); //=> true
has({ a: 1 })('b'); //=> false
identity() ⇒ *
A function which returns whatever is passed into it
Kind: global function
Params: * val
Since: 1.5.0
Example
identity(5); //=> 5
identity({}); //=> {}
includes(search, val) ⇒ boolean | function
Returns true if string is in string or array
Kind: global function
Since: 1.4.0
| Param | Type | | --- | --- | | search | string | number | | val | string | Array |
Example
includes('h', 'hello'); //=> true
includes('a')('apple'); //=> true
invoke(fn) ⇒ *
Invoke a function without arguments
Kind: global function
Since: 1.18.0
| Param | Type | | --- | --- | | fn | function |
Example
var foo = () => 1;
invoke(foo); //=> 1;
isArray(val) ⇒ boolean
Determine if value is array
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | val | * |
Example
isArray([]); //=> true
isArray(1); //=> false
isBoolean(val) ⇒ boolean
Determine if value is boolean;
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | val | * |
Example
isBoolean(1); //=> false
isBoolean(false); //=> true
isEmpty(val) ⇒ boolean
Check whether object, array, or string is empty
Kind: global function
Since: 1.5.0
| Param | Type | | --- | --- | | val | Object | Array | string |
Example
isEmpty([]); //=> true
isEmpty({}); //=> true
isEmpty(''); //=> true
isFunction(val) ⇒ boolean
Determine if value is function
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | val | * |
Example
isFunction(1); //=> false
isFunction(() => ({})); //=> true
isNaN(val) ⇒ boolean
Determine if value is NaN
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | val | number |
Example
isNaN(NaN); //=> true
isNaN(1); //=> false
isNull(val) ⇒ boolean
Determine if value is null
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | val | * |
Example
isNull(null); //=> true
isNull({}); //=> false
isNumber(val) ⇒ boolean
Determine if value is function
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | val | * |
Example
isNumber(1); //=> true
isNumber([]); //=> false
isObject(val) ⇒ boolean
Detemine if value is object
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | val | * |
Example
isObject({}); //=> true
isObject(1); //=> false
isPromise(val) ⇒ boolean
Take a value and determine if it is a promise
Kind: global function
Since: 1.1.0
| Param | Type | | --- | --- | | val | * |
Example
isPromise(Promise.resolve()); //=> true
isPromise('foo'); //=> false
isPropertyOf(key, obj) ⇒ boolean
Determine if string is property of object
Kind: global function
Since: 1.13.0
| Param | Type | | --- | --- | | key | string | | obj | Object |
Example
isPropertyOf('foo', { foo: 'a' }); //=> true
isPropertyOf('foo')({ bar: 'b' }); //=> false
isString(val) ⇒ boolean
Determine if value is string
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | val | * |
Example
isString('foo'); //=> true;
isString(true); //=> false;
isUndefined(val) ⇒ boolean
Determine if value is undefined
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | val | * |
Example
isUndefined(undefined); //=> true
isUndefined(true); //=> false
iterate(fn, len) ⇒ Array
Return array of function iterations of specified length generated from 0-based index
Kind: global function
Since: 1.9.0
| Param | Type | | --- | --- | | fn | function | | len | number |
Example
const foo = index => index + 1;
iterate(foo, 3); //=> [1, 2, 3]
iterate(foo)(2); //=> [1, 2]
joinBy(delimiter, arr) ⇒ function | string
Join array to string, delimited by other string
Kind: global function
Since: 1.13.0
| Param | Type | | --- | --- | | delimiter | string | | arr | Array |
Example
joinBy('.', ['foo', 'bar', 'baz']); //=> 'foo.bar.baz'
joinBy(',')([1, 2, 3]); //=> '1.2.3';
lt(a, b) ⇒ function | boolean
Determine if value is less than other value
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | a | number | string | | b | number | string |
Example
lt(1, 2); //=> true
lt('a')('b'); //=> true
lte(a, b) ⇒ function | boolean
Determine if value is less than or equal to other value
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | a | number | string | | b | number | string |
Example
lte(1, 1); //=> true
lte('a')('b'); //=> true
mapBy(fn, arr) ⇒ function | Array
Map elements in an array by function
Kind: global function
Since: 1.9.0
| Param | Type | | --- | --- | | fn | function | | arr | Array |
Example
const foo = val => val + 1;
mapBy(foo, [1, 2]); //=> [2, 3]
mapBy(foo)([4, 5]); //=> [5, 6]
maybe(fn, val) ⇒ function | *
Execute a function if the argument is not null or undefined
Kind: global function
Since: 1.23.0
Author: oculus42
| Param | Type | | --- | --- | | fn | function | | val | * |
Example
const foo = val => val + 1;
maybe(foo, 1); //=> 2
maybe(foo)(null); //=> null
memoize(fn, [function]) ⇒ function
Cache return contents of functions
Kind: global function
Since: 1.9.0
| Param | Type | Description | | --- | --- | --- | | fn | function | Function to templatize | | [function] | | template - Function to determine cache key |
merge(...args) ⇒ Object
Returns new object, which is a shallow merge of multiple objects
Kind: global function
Since: 1.16.0
| Param | Type | | --- | --- | | ...args | Object |
Example
merge({ a: 1 }, { b: 2}); //=> { a: 1, b: 2 }
multiply(a, b) ⇒ function | number
Multiply two numbers together
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | a | number | | b | number |
Example
multiply(2, 3); //=> 6
multiply(2)(2); //=> 4
none(...args) ⇒ boolean
Returns true if no argument or array value is true
Kind: global function
Since: 1.4.0
| Param | Type | | --- | --- | | ...args | * |
noop() ⇒ undefined
Executes a noop
Kind: global function
Since: 1.5.0
not(val) ⇒ boolean | function
Returns false if truthy, true if falsy, negation if function
Kind: global function
Since: 1.1.0
| Param | Type | | --- | --- | | val | * |
Example
const identity = a => a;
not(1); //=> false
not(false); //=> true
not(identity)(true); //=> false
notEquals(a, b) ⇒ function | boolean
Return true if two values are not equal
Kind: global function
Since: 1.1.0
| Param | Type | | --- | --- | | a | * | | b | * |
Example
notEquals(1, 2); //=> true
notEquals(3)(4); //=> true
or(...args) ⇒ boolean
Determine if at least one argument or array value is truthy
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | ...args | * |
Example
or(true, false, false); //=> true
or([false, false, true]); //=> true
orWith(args, val) ⇒ boolean | function
Take an array of functions (or values) and determine if one result is true given value
Kind: global function
Since: 1.10.0
| Param | Type | | --- | --- | | args | Array | | val | * |
Example
const foo = val => val > 10;
const bar = val => val < 5;
orWith([foo, bar], 6); //=> false
orWith([foo, bar])(1); //=> true
orderBy(template, src) ⇒ function | Array
Generate array based on template of indexes and source
Kind: global function
Since: 1.19.0
| Param | Type | | --- | --- | | template | Array | | src | Array |
Example
orderBy([1, 2, 0], ['a', 'b', 'c']); //=> ['b', 'c', 'a'];
orderBy([2, 0, 1])(['d', 'e', 'f']); //=> ['f', 'd', 'e'];
power(exponent, base) ⇒ function | number
Return exponent from one number to another
Kind: global function
Since: 1.20.0
| Param | Type | | --- | --- | | exponent | number | | base | number |
Example
power(2, 3); //=> 9
power(2)(2); //=> 4
prependTo(str, append) ⇒ function | string
Prepend string to the beginning of another string
Kind: global function
Since: 1.13.0
| Param | Type | | --- | --- | | str | string | | append | string |
Example
prependTo('foo', 'bar'); //=> 'barfoo'
prependTo('bar')('baz'); //=> 'bazbar'
reduceBy(fn, accumulator, arr) ⇒ function | *
Reduce array to new value by function
Kind: global function
Since: 1.9.0
| Param | Type | | --- | --- | | fn | function | | accumulator | * | | arr | Array |
Example
const foo = (acc, val) = acc + val;
reduceBy(foo, 1, [1, 1]); //=> 3
reduceBy(foo, 2)([2, 2]); //=> 6
reduceBy(foo)(3)([3, 3]); //=> 9
replaceWith(search, rep, str) ⇒ string | function
Replace search with new value in string
Kind: global function
Since: 1.6.0
| Param | Type | | --- | --- | | search | string | RegExp | | rep | string | | str | string |
Example
replaceWith('f', 'b', 'foo'); //=> 'boo'
replaceWith(/o/g)('a')('foo'); //=> 'faa'
reverse(fn) ⇒ function
Take a function and return a function which accepts args in reverse order
Kind: global function
Since: 1.1.0
| Param | Type | | --- | --- | | fn | function |
Example
const foo = (a, b, c) => a + b - c;
reverse(foo); //=> (c)(b)(a) => c + b - a;
setProp(prop, value, obj) ⇒ function | Object
Returns a copy of an object with a new name / value pair
Kind: global function
Since: 1.21.0
| Param | Type | | --- | --- | | prop | string | number | | value | * | | obj | Object |
Example
setProp('a', 1, {}); //=> { a: 1 }
getProp('b')(2)({}); //=> { b: 2 }
sliceFrom(start, end, val) ⇒ function | Array | string
Slice an array or string
Kind: global function
Since: 1.17.1
| Param | Type | | --- | --- | | start | number | | end | number | | val | Array | string |
Example
sliceFrom(0, 1, [1, 2, 3]) //=> [0];
someBy(fn, arr) ⇒ function | boolean
Determine if at least one value in array satisfy function
Kind: global function
Since: 1.17.0
| Param | Type | | --- | --- | | fn | function | | arr | Array |
Example
const isTrue = val => val === true;
someBy(isTrue, [true, false]) //=> true
someBy(isTrue)([false, false]) //=> false
splitBy(search, str) ⇒ function | Array
Split string to array by another string
Kind: global function
Since: 1.13.0
| Param | Type | | --- | --- | | search | string | | str | string |
Example
splitBy('.', 'foo.bar.baz'); //=> ['foo', 'bar', 'baz']
splitBy(',')('1,2,3'); //=> ['1', '2', '3'];
spread(...args) ⇒ Array
Convert argument list to array (alias args)
Kind: global function
Since: 1.17.0
| Param | Type | | --- | --- | | ...args | * |
Example
spread(1, 2, 3); //=> [1, 2, 3]
subtract(a, b) ⇒ function | number
Subtract one number from another
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | a | number | | b | number |
Example
subtract(3, 2); //=> 1
subtract(2)(1); //=> 1
ternary(failure, success, predicate) ⇒ *
Return success or failure based on predicate evaluation. If success or failure are functions, returns executed result.
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | failure | * | | success | * | | predicate | * |
Example
ternary(1, 2, true); //=> 2
ternary(1, 2, false); //=> 1
ternaryL(predicate, success, failure) ⇒ *
Return success or failure based on predicate evaluation. If success or failure are functions, returns executed result.
Kind: global function
Since: 1.1.0
| Param | Type | | --- | --- | | predicate | * | | success | * | | failure | * |
Example
ternaryL(true, 1, 2); //=> 1
ternaryL(false, 1, 2); //=> 2
ternaryWith(failure, success, predicate, val) ⇒ *
Return success or failure based on predicate evaluation. If success or failure are functions, returns executed result with passed in parameter;
Kind: global function
Since: 1.9.0
| Param | Type | | --- | --- | | failure | * | | success | * | | predicate | * | | val | * |
Example
const foo = val => val + 1;
const bar = val => val - 1;
ternaryWith(bar, foo, true, 3); //=> 4
ternaryWith(bar, foo, false, 2); //=> 1
toArray(...args) ⇒ Array
Force args to array if not arrays
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | ...args | * |
Example
toArray([1, 2]); //=> [1, 2]
toArray(2, 3); //=> [2, 3]
toBoolean(value) ⇒ boolean
Returns boolean value and converts string 'false' to false
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | value | * |
Example
toBoolean('false'); //=> false
toBoolean({}); //=> true
toFunction(value) ⇒ function
Returns function which returns value if value is not a function.
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | value | * |
Example
toFunction(3); //=> () => 3
toFunction(() => 1); //=> () => 1
toNumber(value) ⇒ number
Parses int or float or Infinity to numeric value
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | value | * |
Example
toNumber('Infinity'); //=> Infinity
toNumber('1.0'); //=> 1
toNumber({}); //=> NaN
toObject(value) ⇒ Object
Forces value into object. If not object, returns {}
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | value | * |
Example
toObject({ a: 1 }); //=> { a: 1 }
toObject(null); //=> null
toObject('foo'); //=> {}
toPromise(val) ⇒ Promise
Take a value and if not a promise, make it a promise
Kind: global function
Since: 1.1.0
| Param | Type | | --- | --- | | val | * |
Example
const foo = toPromise(5);
foo.then(console.log); //=> 5;
toString(value) ⇒ string
Converts value to string. Converts undefined to empty string.
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | value | * |
Example
toString('foo'); //=> 'foo'
toString(false); //=> 'false'
toString(undefined); //=> ''
traverse(obj, path) ⇒ *
Safely traverse object nested properties
Kind: global function
Since: 1.6.0
| Param | Type | | --- | --- | | obj | Object | | path | Array.<string> |
Example
traverse({}, ['a', 'b', 'c']); //=> undefined
traverse({ a: 1 })(['a']); //=> 1
traverseR(path, obj) ⇒ *
Safely traverse object nested properties
Kind: global function
Since: 1.14.0
| Param | Type | | --- | --- | | path | Array.<string> | | obj | Object |
Example
traverse(['a', 'b', 'c'], {}); //=> undefined
traverse(['a'])({ a: 1 }); //=> 1
typeOf(val) ⇒ string
Returns typeof value
Kind: global function
Since: 1.0.0
| Param | Type | | --- | --- | | val | * |
Example
typeOf([]); //=> 'object'
typeOf(undefined); //=> 'undefined'
typeOf(5); //=> 'number'