4.17.11
3.10.1
2.4.2
1.3.1

_.isMatchWith(object, source, [customizer])

This method is like _.isMatch except that it accepts customizer which is invoked to compare values. If customizer returns undefined, comparisons are handled by the method instead. The customizer is invoked with five arguments: (objValue, srcValue, index|key, object, source).

Since

4.0.0

Arguments

argument
object
source
[customizer]
type
Object
Object
Function
description
The object to inspect.
The object of property values to match.
The function to customize comparisons.

Returns

(array)

Example

function isGreeting(value) {
  return /^h(?:i|ello)$/.test(value);
}

function customizer(
  objValue,
  srcValue
) {
  if (
    isGreeting(objValue) &&
    isGreeting(srcValue)
  ) {
    return true;
  }
}

var object = { greeting: "hello" };
var source = { greeting: "hi" };

_.isMatchWith(
  object,
  source,
  customizer
);
// => true
function isGreeting(value) {
  return /^h(?:i|ello)$/.test(value);
}

function customizer(objValue, srcValue) {
  if (isGreeting(objValue) && isGreeting(srcValue)) {
    return true;
  }
}

var object = { greeting: "hello" };
var source = { greeting: "hi" };

_.isMatchWith(object, source, customizer);
// => true