Files
lodash/internal/createCache.js
2015-05-19 13:46:23 -07:00

23 lines
713 B
JavaScript

var SetCache = require('./SetCache'),
constant = require('../utility/constant'),
getNative = require('./getNative');
/** Native method references. */
var Set = getNative(root, 'Set');
/* Native method references for those with the same name as other `lodash` methods. */
var nativeCreate = getNative(Object, 'create');
/**
* Creates a `Set` cache object to optimize linear searches of large arrays.
*
* @private
* @param {Array} [values] The values to cache.
* @returns {null|Object} Returns the new cache object if `Set` is supported, else `null`.
*/
var createCache = !(nativeCreate && Set) ? constant(null) : function(values) {
return new SetCache(values);
};
module.exports = createCache;