mirror of
https://github.com/atlanticbiomedical/biomedjs.git
synced 2025-07-02 00:47:26 -04:00
30 lines
723 B
JavaScript
30 lines
723 B
JavaScript
![]() |
var toObject = require('./toObject');
|
||
|
|
||
|
/**
|
||
|
* The base implementation of `get` without support for string paths
|
||
|
* and default values.
|
||
|
*
|
||
|
* @private
|
||
|
* @param {Object} object The object to query.
|
||
|
* @param {Array} path The path of the property to get.
|
||
|
* @param {string} [pathKey] The key representation of path.
|
||
|
* @returns {*} Returns the resolved value.
|
||
|
*/
|
||
|
function baseGet(object, path, pathKey) {
|
||
|
if (object == null) {
|
||
|
return;
|
||
|
}
|
||
|
if (pathKey !== undefined && pathKey in toObject(object)) {
|
||
|
path = [pathKey];
|
||
|
}
|
||
|
var index = -1,
|
||
|
length = path.length;
|
||
|
|
||
|
while (object != null && ++index < length) {
|
||
|
var result = object = object[path[index]];
|
||
|
}
|
||
|
return result;
|
||
|
}
|
||
|
|
||
|
module.exports = baseGet;
|