_.isMap(value)
143
_.isMap(value)
_.isMap检查一个值是否是一个map对象
如果是nodejs环境,使用nodejs提供的工具函数来判断,否则判断value是否是object-like对象并且toStringTag是[object Map]
参数
value (*): 需要检查的值
返回值
(boolean): 如果value是map对象返回true,否则false
例子
_.isMap(new Map); // => true _.isMap(new WeakMap); // => false
源代码
import getTag from './.internal/getTag.js' import isObjectLike from './isObjectLike.js' import nodeTypes from './.internal/nodeTypes.js' /* Node.js helper references. */ const nodeIsMap = nodeTypes && nodeTypes.isMap /** * Checks if `value` is classified as a `Map` object. * * @since 4.3.0 * @category Lang * @param {*} value The value to check. * @returns {boolean} Returns `true` if `value` is a map, else `false`. * @example * * isMap(new Map) * // => true * * isMap(new WeakMap) * // => false */ //检查一个值是否是一个map对象 //如果是nodejs环境,使用nodejs提供的工具函数来判断,否则判断value是否是object-like对象并且toStringTag是[object Map] const isMap = nodeIsMap ? (value) => nodeIsMap(value) : (value) => isObjectLike(value) && getTag(value) == '[object Map]' export default isMap