Create chain in lodash with custom functions

后端 未结 3 2045
天命终不由人
天命终不由人 2020-12-10 05:23

Is there way to get my own custom function in a chain of lodash. So for example like this:

var l = [1,2,3]
var add = function(a, b){return a+b}

var r =_.cha         


        
3条回答
  •  無奈伤痛
    2020-12-10 05:30

    After @stride anwswer I came up with a more generic solution using _.mixin:

    function add(a, b, c) {
      return a + b + c
    }
    
    function sub(a, b, c) {
      return a - b - c
    }
    
    _.mixin({
      run: function (v, f) {
        var args = Array.prototype.slice.call(arguments, 2)
        args.unshift(v)
        return f.apply(this, args)
      }
    })
    var r = _.chain(1).run(add, 1, 1).run(sub, 2, 2).value()
    
    console.log(r) ->  -1
    1 + 1 + 1 - 2 - 2 = -1
    

    http://jsbin.com/iyEhaMa/1/

    After all I wonder why this not a build in function in lodash.

提交回复
热议问题