当前位置:  开发笔记 > 编程语言 > 正文

将其他参数传递给函数调用(lodash)

如何解决《将其他参数传递给函数调用(lodash)》经验,为你挑选了1个好方法。

关于以下模拟代码(_与lodash库有关):

var containerFunction = function () {
    var opts = {data: value};
    _.map(lines, functionForEach);
}

var functionForEach = function (line) {
  Do something for each line passed in from the maps function.
  Need to access opts in this scope.
  return value;
}

参数行是从map函数接收的,但是将opts参数传递给functionForEach函数同时保持粗略模式(如果可能)的最佳方法是什么.

我想的是:

_.map(lines, functionForEach(opts))

或类似的东西可能有效,但显然不是.

有什么建议?



1> 小智..:

你有三种选择:

    放在functionForEach里面containerFunction.如果你不打算在functionForEach其他地方使用,这是最有意义的.

    把它写成:

    var containerFunction = function () {
      var opts = {data: value};
      _.map(lines, function(elt) { return functionForEach(elt, opts); });
    }
    
    var functionForEach = function (line, opts) {
      Do something for each line passed in from the maps function.
      Need to access opts in this scope.
      return value;
    }  
    

    如果必须,请传递opts第三个(thisArg)参数_.map并使用thisinside 访问它functionForEachvar.

推荐阅读
pan2502851807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有