lodash-addons v2.0.1
Lodash Addons
A collection of utility mixins for lodash. Supports both CommonJS and AMD module formats (meaning, works well with module bundlers or RequireJS-based projects).
Installation
- Yarn:
yarn add --dev lodash-addons
- NPM:
npm install --save-dev lodash-addons
Array
_.transformValueMap
Collection
_.differenceKeys
_.filterKeys
Date
_.parseDate
Lang
_.getArray
_.getBoolean
_.getFinite
_.getFunction
_.getMap
_.getNumber
_.getObject
_.getPlainObject
_.getSet
_.getString
_.getWeakMap
_.getWeakSet
_.isIterable
_.isNonEmptyString
_.toBool
Math
_.sign
Object
_.hasInOfType
_.hasOfType
_.objectWith
_.parseQueryString
_.toQueryString
Preconditions
_.check
String
_.generateKey
_.slugify
Util
_.getPrototype
“Array” Methods
Transforms a value in each element of collection if the path is not undefined.
Arguments
collection
(Array): Array of objectspath
(string): The path of the value to transformtransformer
(function): Callback which returns the transformed value
“Collection” Methods
Gets indices for which elements differ between two arrays.
Arguments
first
(array): First arraysecond
(array): Second array
Example
_.differenceKeys([false, true], [false, false]);
// => [1]
Iterates over keys of a collection, returning an array of all keys predicate returns truthy for. The predicate is invoked with three arguments: (value, index|key, collection).
Arguments
collection
(object): The object to iterate over.iteratee
(function): The function invoked per iteration.
“Date” Methods
Parses a value by passing it to new Date().
Arguments
val
(string): Value to be parsed
“Lang” Methods
Returns value if an array, otherwise a default.
Arguments
value
(mixed): Source valuereplacement
(number): Custom default if value is invalid type.
Example
_.getArray(null);
// => []
_.getArray(null, ['test']);
// => ['test']
Returns value if a boolean, otherwise a default boolean.
Arguments
value
(mixed): Source valuereplacement
(number): Custom default if value is invalid type.
Example
_.getBoolean(null);
// => false
_.getBoolean(null, true);
// => true
Returns value if a finite number, otherwise a default number.
Arguments
value
(mixed): Source valuereplacement
(number): Custom default if value is invalid type.
Example
_.getFinite('');
// => 0
_.getFinite('', 100);
// => 100
_.getFinite(NaN, 25);
// => 25
Returns value if a function, otherwise a default function.
Arguments
value
(mixed): Source valuereplacement
(number): Custom default if value is invalid type.
Example
_.getFunction(null);
// => function () {}
Returns value if a Map, otherwise a default map.
Arguments
value
(mixed): Source valuereplacement
(number): Custom default if value is invalid type.
Returns value if a number, otherwise a default number.
Arguments
value
(mixed): Source valuereplacement
(number): Custom default if value is invalid type.
Example
_.getNumber('');
// => 0
_.getNumber('', 100);
// => 100
Returns value if a object, otherwise a default object.
Arguments
value
(mixed): Source valuereplacement
(number): Custom default if value is invalid type.
Example
_.getObject('');
// => {}
Returns value if a plain object, otherwise a default object.
Arguments
value
(mixed): Source valuereplacement
(number): Custom default if value is invalid type.
Example
_.getPlainObject('');
// => {}
Returns value if a Set, otherwise a default set.
Arguments
value
(mixed): Source valuereplacement
(set): Custom default if value is invalid type.
Example
_.getSet('');
// => Set()
Returns value if a string, otherwise a default string.
Arguments
value
(mixed): Source valuereplacement
(number): Custom default if value is invalid type.
Example
_.getString(false);
// => ''
Returns value if a WeakMap, otherwise a default WeakMap.
Arguments
value
(mixed): Source valuereplacement
(weakmap): Custom default if value is invalid type.
Example
_.getWeakMap(false);
// => ''
Returns value if a WeakSet, otherwise a default WeakSet.
Arguments
value
(mixed): Source valuereplacement
(weakset): Custom default if value is invalid type.
Example
_.getWeakSet(false);
// => ''
Checks if value is iterable.
Arguments
object
(object): An object
Example
_.isIterable([]);
// => true
Checks if value is a non-empty string.
Arguments
string
(object): String
Example
_.isNonEmptyString('');
// => false
Converts a value to a boolean.
Arguments
value
(*): Source value
Example
_.toBool(1);
// => true
“Math” Methods
Returns a number representing the sign of value
.
If value
is a positive number, negative number, positive zero or negative zero,
the function will return 1
, -1
, 0
or -0
respectively. Otherwise, NaN is returned.
Arguments
value
(number): A number
Returns
(number): A number representing the sign
Example
_.sign(10);
// => 1
_.sign(-10);
// => -1
“Object” Methods
If _.hasIn returns true, run a validator on value.
Arguments
value
(mixed): Collection for _.hasInpath
(number|string): Path.validator
(function): Function to validate value.
If _.has returns true, run a validator on value.
Arguments
value
(mixed): Collection for _.haspath
(string): Pathvalidator
(function): Function to validate value.
Example
_.hasOfType({ test: '' }, 'test', _.isString);
// => true
Shorthand object creation when sole property is a variable, or a path.
Arguments
object
(): Existing object *(optional)*path
(number|string): Propertyvalue
(mixed): Value
Example
// To create a new object:
_.objectWith('key', 'value');
// => { key: 'value' }
_.objectWith('a.deep.path', 'value');
// => {
a: {
deep: {
path: 'value'
}
}
}
// Using existing:
_.objectWith({ a: 1 }, 'b', 2);
// => { a: 1, b: 2 }
Parses query string into key/value object.
Arguments
string
(string): Query string.
Example
_.parseQueryString('key=value');
// => { key: 'value' }
Converts an object's key/values to a query string.
Arguments
object
(object): Source key/value collection
Example
_.toQueryString({ a: 1, b: 2 });
// => a=1&b=2
“Preconditions” Methods
Throw a TypeError if value doesn't match one of any provided validation methods.
Arguments
value
(mixed): Value
“String” Methods
Generates a random alphanumeric string with length n.
Arguments
length
(int): Desired length.
Example
_.generateKey(5);
// => 'L7IpD'
Generates a url-safe "slug" form of a string.
Arguments
string
(string): String value.
Example
_.slugify('A Test');
// => a-test
“Util” Methods
Gets the prototype for the given value.
Arguments
value
(*): Source value
Example
_.getPrototype(5);
// => { toFixed: func(), ... }
7 years ago
8 years ago
8 years ago
8 years ago
8 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago