可以通过创建mixins来扩展下划线/ lodash,但是如果我想要一个与现有lodash函数类似的函数怎么办呢。例如,让我说我想添加一个函数,通过查看某个属性键来比较两个对象。函数将采用两个对象和一个属性键名称。听起来很简单吧?
现在想象一下,我想重载现有的_.isEqual
,而不是创建一个具有不同名称的全新mixin。在该函数中,它首先检查前两个参数是否为对象,第三个参数是否为字符串,如果不是,则调用原始_.isEqual
函数。
我知道这不是一个好主意,但我想知道它是否可行。
我尝试创建一个名为_.isEqual
的mixin,如下所示:
function isEqual(value, other, customizer, thisArg) {
console.log('my own isEqual');
return _.isEqual.apply(thisArg || this, arguments);
}
显然这不起作用,因为它递归地保持自我调用。你们有什么想法吗?