【问题标题】:lodash compose with multiple argumentslodash 组合多个参数
【发布时间】:2014-11-19 04:30:30
【问题描述】:

我有一个按原样工作的函数,但我喜欢挑战自己,用 lodash 函数在一行中编写它。我无法让这个特定示例正常工作。

function sum(x,y) {
    return (+x)+(+y);
}

var a = function(e, f) {
    return Math.pow((e-f),2);
};

var x = _.reduce(arr, function(acc, v, k) {
    var c = Math.pow((v-m), 2);
    acc += c;
    return acc;
}, 0);

var m = 5;
var arr = [4, 2, 5, 8, 6]

我期待 20 个。

这是我一直在尝试但没有运气:

_.reduce(arr, _.partial(sum, _.partialRight(a, m)), 0);

产生 NaN。所以我想也许我可以用 sum 组成第一个函数:

_.reduce(arr, _.compose(_.partialRight(a, m), sum), 0);

产量 131044。

有什么建议吗?

【问题讨论】:

    标签: javascript lodash


    【解决方案1】:

    你原来的函数已经是“一行,使用 Lodash 函数”:

    var x = _.reduce(arr, function(acc, v, k) { return acc + Math.pow(v-m, 2); }, 0);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-06
      • 2017-02-22
      • 2021-12-10
      • 1970-01-01
      • 2015-07-26
      相关资源
      最近更新 更多