mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-02-06 09:47:48 +00:00
Consolidate invoke modules.
This commit is contained in:
@@ -1,24 +0,0 @@
|
||||
import apply from './apply.js';
|
||||
import castPath from './castPath.js';
|
||||
import last from '../last.js';
|
||||
import parent from './parent.js';
|
||||
import toKey from './toKey.js';
|
||||
|
||||
/**
|
||||
* The base implementation of `invoke` without support for individual
|
||||
* method arguments.
|
||||
*
|
||||
* @private
|
||||
* @param {Object} object The object to query.
|
||||
* @param {Array|string} path The path of the method to invoke.
|
||||
* @param {Array} args The arguments to invoke the method with.
|
||||
* @returns {*} Returns the result of the invoked method.
|
||||
*/
|
||||
function baseInvoke(object, path, args) {
|
||||
path = castPath(path, object);
|
||||
object = parent(object, path);
|
||||
const func = object == null ? object : object[toKey(last(path))];
|
||||
return func == null ? undefined : apply(func, object, args);
|
||||
}
|
||||
|
||||
export default baseInvoke;
|
||||
Reference in New Issue
Block a user