我希望能夠執行一個功能,當另一個執行。就像它們綁定在一起一樣。我嘗試了一些東西,例如使用bind
,但這不起作用,因爲它僅用於更改上下文。綁定功能,所以當一個執行另一個執行
這裏是我想要做的 http://jsfiddle.net/4hdX5/
我希望能夠執行一個功能,當另一個執行。就像它們綁定在一起一樣。我嘗試了一些東西,例如使用bind
,但這不起作用,因爲它僅用於更改上下文。綁定功能,所以當一個執行另一個執行
這裏是我想要做的 http://jsfiddle.net/4hdX5/
一個的jsfiddle叫它:
function test() {
alert('testing');
}
function test2() {
alert('testing2');
test();
}
test2();
小提琴:Fiddle
你可以做的是做出某種的功能池。我沒有在這裏快速&髒的對象常量:
var functionPool = {
pool: {},
add: function (name, pFunction) {
functionPool.pool[name] = pFunction;
},
execute: function (name) {
functionPool.pool[name].call();
},
executeAllBound: function(name) {
functionPool.pool[name].call();
// TODO
// then iterate over all not named name
}
};
function f1() {
alert(42);
}
function f2() {
alert(1337);
}
functionPool.add("firstAlert", f1);
functionPool.add("secondAlert", f2);
functionPool.execute("firstAlert");
functionPool.execute("secondAlert");
functionPool.execute1llBound("secondAlert");
您將它們保存爲KV-對,你可以很容易地執行一個或全部,或者一個開始,不是遍歷所有其他。
查看http://underscorejs.org/ – Malk