mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-01-31 15:27:50 +00:00
25 lines
687 B
JavaScript
25 lines
687 B
JavaScript
var baseIsEqual = require('./baseIsEqual'),
|
|
isStrictComparable = require('./isStrictComparable');
|
|
|
|
/**
|
|
* The base implementation of `_.matchesProperty` which does not coerce `key`
|
|
* to a string.
|
|
*
|
|
* @private
|
|
* @param {string} key The key of the property to get.
|
|
* @param {*} value The value to compare.
|
|
* @returns {Function} Returns the new function.
|
|
*/
|
|
function baseMatchesProperty(key, value) {
|
|
if (isStrictComparable(value)) {
|
|
return function(object) {
|
|
return object != null && object[key] === value;
|
|
};
|
|
}
|
|
return function(object) {
|
|
return object != null && baseIsEqual(value, object[key], null, true);
|
|
};
|
|
}
|
|
|
|
module.exports = baseMatchesProperty;
|