mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-02-08 10:17:48 +00:00
Consolidate toPairs modules.
This commit is contained in:
16
toPairsIn.js
16
toPairsIn.js
@@ -1,4 +1,7 @@
|
||||
import createToPairs from './.internal/createToPairs.js';
|
||||
import arrayMap from './.internal/arrayMap.js';
|
||||
import getTag from './.internal/getTag.js';
|
||||
import mapToArray from './.internal/mapToArray.js';
|
||||
import setToPairs from './.internal/setToPairs.js';
|
||||
import keysIn from './keysIn.js';
|
||||
|
||||
/**
|
||||
@@ -23,6 +26,15 @@ import keysIn from './keysIn.js';
|
||||
* toPairsIn(new Foo);
|
||||
* // => [['a', 1], ['b', 2], ['c', 3]] (iteration order is not guaranteed)
|
||||
*/
|
||||
const toPairsIn = createToPairs(keysIn);
|
||||
function toPairsIn(object) {
|
||||
const tag = getTag(object);
|
||||
if (tag == '[object Map]') {
|
||||
return mapToArray(object);
|
||||
}
|
||||
if (tag == '[object Set]') {
|
||||
return setToPairs(object);
|
||||
}
|
||||
return arrayMap(keysIn(object), key => [key, object[key]]);
|
||||
}
|
||||
|
||||
export default toPairsIn;
|
||||
|
||||
Reference in New Issue
Block a user