[问题] IIFE的问题

楼主: keke0421 (zrae)   2014-11-14 11:33:01
各位大大好
var puzzlers = [
function ( a ) { return 8*a - 10; },
function ( a ) { return (a-3) * (a-3) * (a-3); },
function ( a ) { return a * a + 4; },
function ( a ) { return a % 5; }
];
var start = 2;
var applyAndEmpty = function(input, funQueue){
var result = input;
for ( ; funQueue.length>0;){
result = funQueue.shift()(result)(); //星号1
}
return result;
};
alert( applyAndEmpty(start,puzzlers)() ); //星号2
星号1和星号2的地方 我搞不太清楚 为什么要加()这个立即执行的动作
不加的话有什么差别吗? 想不透
作者: mrbigmouth (大嘴先生)   2014-11-14 11:38:00
错了吧? 两边都是多了一个() 这几行程式我拿去直接执行会报错

Links booklink

Contact Us: admin [ a t ] ucptt.com