UNPKG

737 BJavaScriptView Raw
1import arrayPush from './_arrayPush.js';
2import isArray from './isArray.js';
3
4/**
5 * The base implementation of `getAllKeys` and `getAllKeysIn` which uses
6 * `keysFunc` and `symbolsFunc` to get the enumerable property names and
7 * symbols of `object`.
8 *
9 * @private
10 * @param {Object} object The object to query.
11 * @param {Function} keysFunc The function to get the keys of `object`.
12 * @param {Function} symbolsFunc The function to get the symbols of `object`.
13 * @returns {Array} Returns the array of property names and symbols.
14 */
15function baseGetAllKeys(object, keysFunc, symbolsFunc) {
16 var result = keysFunc(object);
17 return isArray(object) ? result : arrayPush(result, symbolsFunc(object));
18}
19
20export default baseGetAllKeys;