|
123456789101112131415161718192021222324252627282930 |
- var baseToPairs = require('./_baseToPairs'),
- getTag = require('./_getTag'),
- mapToArray = require('./_mapToArray'),
- setToPairs = require('./_setToPairs');
-
- /** `Object#toString` result references. */
- var mapTag = '[object Map]',
- setTag = '[object Set]';
-
- /**
- * Creates a `_.toPairs` or `_.toPairsIn` function.
- *
- * @private
- * @param {Function} keysFunc The function to get the keys of a given object.
- * @returns {Function} Returns the new pairs function.
- */
- function createToPairs(keysFunc) {
- return function(object) {
- var tag = getTag(object);
- if (tag == mapTag) {
- return mapToArray(object);
- }
- if (tag == setTag) {
- return setToPairs(object);
- }
- return baseToPairs(object, keysFunc(object));
- };
- }
-
- module.exports = createToPairs;
|