mirror of https://github.com/lukechilds/node.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
24 lines
573 B
24 lines
573 B
9 years ago
|
var Map = require('./_Map'),
|
||
|
assocGet = require('./_assocGet'),
|
||
|
hashGet = require('./_hashGet'),
|
||
|
isKeyable = require('./_isKeyable');
|
||
|
|
||
|
/**
|
||
|
* Gets the map value for `key`.
|
||
|
*
|
||
|
* @private
|
||
|
* @name get
|
||
|
* @memberOf MapCache
|
||
|
* @param {string} key The key of the value to get.
|
||
|
* @returns {*} Returns the entry value.
|
||
|
*/
|
||
|
function mapGet(key) {
|
||
|
var data = this.__data__;
|
||
|
if (isKeyable(key)) {
|
||
|
return hashGet(typeof key == 'string' ? data.string : data.hash, key);
|
||
|
}
|
||
|
return Map ? data.map.get(key) : assocGet(data.map, key);
|
||
|
}
|
||
|
|
||
|
module.exports = mapGet;
|