| 1234567891011121314151617181920212223242526272829303132333435363738394041 | import baseIsEqual from './_baseIsEqual.js';/** * This method is like `_.isEqual` 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 up to * six arguments: (objValue, othValue [, index|key, object, other, stack]). * * @static * @memberOf _ * @since 4.0.0 * @category Lang * @param {*} value The value to compare. * @param {*} other The other value to compare. * @param {Function} [customizer] The function to customize comparisons. * @returns {boolean} Returns `true` if the values are equivalent, else `false`. * @example * * function isGreeting(value) { *   return /^h(?:i|ello)$/.test(value); * } * * function customizer(objValue, othValue) { *   if (isGreeting(objValue) && isGreeting(othValue)) { *     return true; *   } * } * * var array = ['hello', 'goodbye']; * var other = ['hi', 'goodbye']; * * _.isEqualWith(array, other, customizer); * // => true */function isEqualWith(value, other, customizer) {  customizer = typeof customizer == 'function' ? customizer : undefined;  var result = customizer ? customizer(value, other) : undefined;  return result === undefined ? baseIsEqual(value, other, undefined, customizer) : !!result;}export default isEqualWith;
 |