# isMap
# Description
检查 value 是否为一个 Map 对象。
# Params
value
# Return
Boolean
# Depend
import getTag from './.internal/getTag.js'
import isObjectLike from './isObjectLike.js'
import nodeTypes from './.internal/nodeTypes.js'
# Code
const nodeIsMap = nodeTypes && nodeTypes.isMap
const isMap = nodeIsMap
? (value) => nodeIsMap(value)
: (value) => isObjectLike(value) && getTag(value) == '[object Map]'
# Analyze
和 isArrayBuffer 类似,只不过 node
的方法和 getTag
的判断条件不同罢了
# Remark
# Example
isMap(new Map)
// => true
isMap(new WeakMap)
// => false