mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-02-01 15:57:48 +00:00
25 lines
604 B
JavaScript
25 lines
604 B
JavaScript
import castPath from './castPath.js'
|
|
import toKey from './toKey.js'
|
|
|
|
/**
|
|
* The base implementation of `get` without support for default values.
|
|
*
|
|
* @private
|
|
* @param {Object} object The object to query.
|
|
* @param {Array|string} path The path of the property to get.
|
|
* @returns {*} Returns the resolved value.
|
|
*/
|
|
function baseGet(object, path) {
|
|
path = castPath(path, object)
|
|
|
|
let index = 0
|
|
const length = path.length
|
|
|
|
while (object != null && index < length) {
|
|
object = object[toKey(path[index++])]
|
|
}
|
|
return (index && index == length) ? object : undefined
|
|
}
|
|
|
|
export default baseGet
|