Methods
dp(path, obj) → {*}
Example
dp("a.b", {a: {b: 2}}); //=> 2
dp("a.b.", {c: {b: 2}}); //=> undefined
dp("a.b.0", {a: {b: [1, 2, 3]}}); //=> 1
dp("a.b.-2", {a: {b: [1, 2, 3]}}); //=> 2
Parameters:
| Name | Type | Description |
|---|---|---|
path |
String | The dotted path to use. |
obj |
Object | The object to retrieve the nested property from. |
Returns:
The data at path.
- Type
- *
dpEq(val, path, obj) → {Boolean}
- Description:
Determines whether a dotted path on an object has a specific value, in
R.equalsterms. Most likely used to filter a list.
- Source:
Example
const user1 = { address: { zipCode: 90210 } };
const user2 = { address: { zipCode: 55555 } };
const user3 = { name: 'Bob' };
const users = [ user1, user2, user3 ];
const isFamous = dpEq(90210, 'address.zipCode');
R.filter(isFamous, users); //=> [ user1 ]
Parameters:
| Name | Type | Description |
|---|---|---|
val |
* | The value to compare the nested property with |
path |
String | The dotted path of the nested property to use |
obj |
Object | The object to check the nested property in |
Returns:
true if the value equals the nested object property,
false otherwise.
- Type
- Boolean
dpOr(default, path, obj) → {*}
- Description:
Retrieve the value at a given nested dotted path if it has a value otherwise return the default value.
- Source:
Example
dpOr(1, "a.b", {a: {b: 2}}); //=> 2
dpOr(1, "a.b.", {c: {b: 2}}); //=> undefined
dpOr(1, "a.b.1", {a: {b: [1, 2, 3]}}); //=> 2
dpOr(1, "a.b.-2", {a: {b: [1, 2, 3]}}); //=> 2
Parameters:
| Name | Type | Description |
|---|---|---|
default |
* | The default value |
path |
String | The dotted path to use. |
obj |
Object | The object to retrieve the nested property from. |
Returns:
The data at path if it has a value otherwise the default value.
- Type
- *
dpPluck(key, f) → {Array}
- Description:
Returns a new list by plucking the same dotted path off all objects in the list supplied.
pluckwill work on any functor in addition to arrays, as it is equivalent toR.map(dp(k), f).
- Source:
Example
dpPluck('name.first', [{name: { first: 'fred' }}, {name: { first: 'wilma'} }]); //=> ['fred', 'wilma']
Parameters:
| Name | Type | Description |
|---|---|---|
key |
String | The dotted path to pluck off of each object. |
f |
Array | The array or functor to consider. |
Returns:
The list of values for the given key.
- Type
- Array
intoArray(transformedArray, transformers) → {Array}
Example
intoArray(map(i => i + 1), map(i => i * 2), [1, 2])
Parameters:
| Name | Type | Description |
|---|---|---|
transformedArray |
Array | The array to transform |
transformers |
Array.<function()> | A list of functions to transform the input array |
Returns:
The transformed input array
- Type
- Array
invokeMap(func, collection) → {*}
- Description:
Invokes a function on each object in a collection and returns each result
- Source:
Example
const objs = [{ test() { return "a" } }, { test() { return "b" } }];
invokeMap("test", objs); //=> ["a", "b"]
Parameters:
| Name | Type | Description |
|---|---|---|
func |
function | The function to invoke on each object in the collection. |
collection |
Array | The collection to invoke |
Returns:
An array of each result of invoking func on each item in collection
- Type
- *
leftJoin(rightComparedPath, rightCollection, leftComparedPath, leftCollection) → {Array}
- Description:
Returns a list of tuples where the first item is the original item from the leftCollection and the second is is the object from the rightCollection that has a rightComparedPath value equal to the value at leftComparedPath
- Source:
Example
const leftCollection = [{ a: "a", b: 2 }];
const rightCollection = [{ id: "a", c: 2 }];
const result = leftJoin("id", rightCollection, "a", leftCollection); //=> [[{ a: "a", b: 2 }, { id: "a", c: 2 }]]
Parameters:
| Name | Type | Description |
|---|---|---|
rightComparedPath |
String | The dotted path to compare to leftComparedPath on each rightCollection object. |
rightCollection |
Array | The right side of the join |
leftComparedPath |
String | The dotted path to compare on each leftCollection object. |
leftCollection |
Array | The left side of the join |
Returns:
A list of tuples where the first item is the original item from the leftCollection and the second is the joined item
- Type
- Array
maxOf(func, collection) → {Number}
- Description:
Returns the largest value for a function applied to a collection of objects
- Source:
Example
maxOf(prop("a"), [{ a: 2 }, { a: 1 }, { a: null }]); //=> 2
Parameters:
| Name | Type | Description |
|---|---|---|
func |
function | The function to apply to each object in the collection. |
collection |
Array | The collection to check |
Returns:
The largest value returned by applying func to each object in collection.
- Type
- Number
minOf(func, collection) → {Number}
- Description:
Returns the smallest value for a function applied to a collection of objects
- Source:
Example
minOf(prop("a"), [{ a: 2 }, { a: 1 }, { a: null }]); //=> 1
Parameters:
| Name | Type | Description |
|---|---|---|
func |
function | The function to apply to each object in the collection. |
collection |
Array | The collection to check |
Returns:
The smallest value returned by applying func to each object in collection.
- Type
- Number
upperFirst(str) → {String}
Example
upperFirst("test"); //=> "Test"
Parameters:
| Name | Type | Description |
|---|---|---|
str |
String | The string to uppercase the first letter of |
Returns:
The input string with its first letter uppercased
- Type
- String