如何扩展lodash功能?

时间:2015-09-25 21:10:03

标签: javascript underscore.js lodash

可以通过创建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);
}

显然这不起作用,因为它递归地保持自我调用。你们有什么想法吗?

0 个答案:

没有答案