or run

npx @tessl/cli init
Log in

Version

Tile

Overview

Evals

Files

tessl/npm-lodash--ismap

The lodash method `_.isMap` exported as a standalone Node.js module for checking if a value is a Map object.

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
npmpkg:npm/lodash.ismap@4.4.x

To install, run

npx @tessl/cli install tessl/npm-lodash--ismap@4.4.0

0

# lodash.ismap

1

2

The lodash.ismap package provides the `_.isMap` utility method as a standalone Node.js module. It checks if a value is a Map object using internal object type checking mechanisms, offering cross-environment compatibility and optimal performance.

3

4

## Package Information

5

6

- **Package Name**: lodash.ismap

7

- **Package Type**: npm

8

- **Language**: JavaScript

9

- **Installation**: `npm install lodash.ismap`

10

11

## Core Imports

12

13

```javascript

14

var isMap = require('lodash.ismap');

15

```

16

17

## Basic Usage

18

19

```javascript

20

var isMap = require('lodash.ismap');

21

22

// Check if value is a Map

23

isMap(new Map);

24

// => true

25

26

isMap(new WeakMap);

27

// => false

28

29

isMap({});

30

// => false

31

32

isMap([1, 2, 3]);

33

// => false

34

35

isMap(null);

36

// => false

37

```

38

39

## Capabilities

40

41

### Map Type Checking

42

43

Checks if a value is classified as a Map object with cross-environment compatibility.

44

45

```javascript { .api }

46

/**

47

* Checks if `value` is classified as a `Map` object.

48

*

49

* @param {*} value The value to check.

50

* @returns {boolean} Returns `true` if `value` is a map, else `false`.

51

*/

52

function isMap(value);

53

```

54

55

**Parameters:**

56

- `value` (*): The value to check

57

58

**Returns:**

59

- `boolean`: Returns `true` if `value` is a map, else `false`

60

61

**Implementation Details:**

62

63

The function uses two different strategies based on the environment:

64

65

1. **Node.js Environment**: Uses native `util.isMap` for optimal performance when available

66

2. **Browser/General Environment**: Falls back to object type checking using `Object.prototype.toString`

67

68

The implementation handles cross-browser compatibility issues and provides accurate Map detection across different JavaScript environments, including:

69

- Native Map support in modern browsers

70

- IE 11 compatibility issues

71

- Node.js optimizations

72

- Host object detection in older IE versions

73

74

**Usage Examples:**

75

76

```javascript

77

var isMap = require('lodash.ismap');

78

79

// Standard Map object

80

var myMap = new Map([['key1', 'value1'], ['key2', 'value2']]);

81

console.log(isMap(myMap)); // => true

82

83

// WeakMap (not a Map)

84

var myWeakMap = new WeakMap();

85

console.log(isMap(myWeakMap)); // => false

86

87

// Plain objects

88

console.log(isMap({})); // => false

89

console.log(isMap({ a: 1 })); // => false

90

91

// Arrays

92

console.log(isMap([])); // => false

93

console.log(isMap([1, 2, 3])); // => false

94

95

// Primitives

96

console.log(isMap(null)); // => false

97

console.log(isMap(undefined)); // => false

98

console.log(isMap(42)); // => false

99

console.log(isMap('string')); // => false

100

console.log(isMap(true)); // => false

101

102

// Edge cases

103

console.log(isMap(new Set())); // => false

104

console.log(isMap(new Date())); // => false

105

console.log(isMap(/regex/)); // => false

106

```