javascript - 在 Javascript 中,如何同时对两个 seqs 的元素执行一个函数?

标签 javascript jquery iteration loops underscore.js

在 Javascript 中,在两个数组上并发迭代并在两个正在运行的元素上调用函数的最佳方法是什么?例如:

var a = [1, 2, 3];
var b = [11, 12, 13];
function my_func() { /* some custom function */}

代码应执行 my_func 3 次,如下所示:

my_func(1,11);
my_func(2,12);
my_func(3,13);

如何在不定义新函数的情况下使用 jQuery/underscore api 实现这一目标?

最佳答案

比如这样(使用underscore.js)?

_.each( _.zip(a,b), my_func );

function my_func( pair ){
  alert( pair[0] + pair[1] );
}

或者:

_.each( _.zip(a,b), function( pair ){
  my_func( pair[0], pair[1] );
  // or: my_func.apply( null, pair );
});

function my_func( a, b ){
  alert( a + b );
}

-

function wrapply( func, thisObj ){
  return function( args ){
    return func.apply( thisObj, args );
  }
}

var add = wrapply( function(a,b){ return a+b; });
alert( add([1,2]) );

关于javascript - 在 Javascript 中,如何同时对两个 seqs 的元素执行一个函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9124874/

相关文章:

javascript - 我如何知道从 <ul> 中单击了哪个 <li> 元素?

python - 重复调用函数的函数?

java - 迭代循环比较当前索引与下一个索引java

javascript - 错误 TS2356 表示数字类型变量必须是类型 'number' 的算术操作数

javascript - 如何在滚动条上旋转背景图片

javascript - 我如何以部分方式显示 json

JavaScript函数指针问题

javascript - Jquery 事件处理程序上的字符串插值不起作用

javascript - 如何检查虚拟地球/Bing map 加载错误

javascript - 跟踪 Knockout.js 订阅者