function(i,x) { x(); 是否有 JavaScript/Underscore/jQuery 快捷方式? }?
Is there any JavaScript/Underscore/jQuery shortcut for function(i,x) { x(); }?
我有一组侦听器函数,例如:
var tab = [ function() {console.log(1);} , function(){console.log(2);} ]
而且我可以通过以下方式通知所有听众而无需编写循环:
$.each( tab , function(i,x) { x(); } );
最终,我可以将函数提取到常用位置:
$.each( tab , myLib.call );
但是在 JS / jQuery / 下划线中调用数组有什么捷径吗?
你可以使用Function.prototype.call
,像这样
$.each(tab, Function.prototype.call);
我推荐 Underscore's invoke
:
_.invoke(tab, Function.prototype.call);
另见 Passing function invocation as a parameter。
我有一组侦听器函数,例如:
var tab = [ function() {console.log(1);} , function(){console.log(2);} ]
而且我可以通过以下方式通知所有听众而无需编写循环:
$.each( tab , function(i,x) { x(); } );
最终,我可以将函数提取到常用位置:
$.each( tab , myLib.call );
但是在 JS / jQuery / 下划线中调用数组有什么捷径吗?
你可以使用Function.prototype.call
,像这样
$.each(tab, Function.prototype.call);
我推荐 Underscore's invoke
:
_.invoke(tab, Function.prototype.call);
另见 Passing function invocation as a parameter。