我在
javascript中有一个功能
@H_404_2@function foo(callback) {
console.log("Hello");
callback();
}
和另一个功能
@H_404_2@function bar() { console.log("world"); }我想制作一个FooBar函数
@H_404_2@FooBar = foo.bind(this,bar);这工作正常,但我实际上要做的是创建一个function queue,并且在绑定回调之前我经常需要绑定一个无函数参数,如下例所示
@H_404_2@function foo() { console.log(arguments[0]); var func = arguments[1]; func(); } function bar() { console.log("world"); } foo.bind(this,"hello"); var FooBar = foo.bind(this,bar); FooBar();这会产生这个错误
@H_404_2@[Function: bar] TypeError: undefined is not a function解决方法
你将“Hello”绑定到foo,然后将bar单独绑定到foo – 不应该将bar绑定到第一个绑定的结果,如下所示:
@H_404_2@var FooHello = foo.bind(this,"hello");
var FooBar = FooHello.bind(this,bar);
Fiddle here.(记录“你好”,“世界”).