index.js 509 B

12345678910111213141516171819202122232425
  1. 'use strict';
  2. var isMap = require('is-map');
  3. var isSet = require('is-set');
  4. var isWeakMap = require('is-weakmap');
  5. var isWeakSet = require('is-weakset');
  6. /** @type {import('.')} */
  7. module.exports = function whichCollection(/** @type {unknown} */ value) {
  8. if (value && typeof value === 'object') {
  9. if (isMap(value)) {
  10. return 'Map';
  11. }
  12. if (isSet(value)) {
  13. return 'Set';
  14. }
  15. if (isWeakMap(value)) {
  16. return 'WeakMap';
  17. }
  18. if (isWeakSet(value)) {
  19. return 'WeakSet';
  20. }
  21. }
  22. return false;
  23. };