UNPKG

ut2

Version:

一个现代 JavaScript 实用工具库。[点击查看在线文档]。

21 lines (18 loc) 649 B
import { nativeUndefined } from './internals/native.js'; import isNil from './isNil.js'; import isUndefined from './isUndefined.js'; import toPath from './toPath.js'; function baseGet(object, key) { var paths = toPath(key, object); var length = paths.length; var index = 0; while (!isNil(object) && index < length) { object = object[paths[index++]]; } return index && index === length ? object : nativeUndefined; } function get(object, key, defaultValue) { var result = isNil(object) ? nativeUndefined : baseGet(object, key); return isUndefined(result) ? defaultValue : result; } export { get as default };