Lodash - isMatchWith 方法



语法

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

此方法与 _.isMatch 类似,但它接受 customizer,后者会被调用来比较值。如果 customizer 返回未定义,那么比较将由方法处理。customizer 会通过五个参数调用:(objValue, srcValue, index|key, object, source)。

参数

  • object (对象) − 要检查的对象。

  • source (对象) − 要匹配的属性值对象。

  • [customizer] (函数) − 自定义比较的函数。

输出

  • (boolean) − 如果 object 匹配,则返回 true,否则返回 false。

示例

var _ = require('lodash');

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' };
 
console.log(_.isMatchWith(object, source, customizer));

将上述程序保存在 tester.js 中。运行以下命令以执行此程序。

命令

\>node tester.js

输出

true
lodash_lang.htm
广告