我正在创建一个函数数组。
var wrapFunction = function(fn, context, params) {
return function() {
fn.apply(context, params);
};
}
var sayStuff = function(str) {
//do work & return something
return str;
}
var fun1 = wrapFunction(sayStuff, this, ["Hello, world!"]);
que = []
que.push(fun1);
现在我正在这样做:
var current = que.shift()
current();
这很好用,但是有一种方法可以调用que.shift并将所有功能一直运行到我的
sayStuff
函数;以便current === 'Hello, world!'
我尝试了
(que.shift())();
,但它不会触发整个周期。 最佳答案
如果您(que.shift())();
调用的值return
应该起作用:fn.apply
关于javascript - .shift()之后的调用函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34728975/