2015-10-13 40 views
0

我正在做一个更大的项目,但是当这不起作用时,我做了简单的版本,看看它是否有效,但是没有。这是简化的代码:使用Javascript:使对象成为输入函数

a = new Thing(sayHi); 

function sayHi() { 
    alert("hi"); 
} 

function Thing (callback) { 
    callback; 
} 

我想那是什么一个Thing创建时,该功能sayHi()被调用,但不起作用。这是为什么?谢谢。

回答

3

你只提到了回调函数,而不是,它调用它。相反:

a = new Thing(sayHi); 
 

 
function sayHi() { 
 
    alert("hi"); 
 
} 
 

 
function Thing (callback) { 
 
    callback(); 
 
}

+0

太简单了,谢谢你:-) –

1

您需要实际调用你的函数。使用callback();代替callback;

0

对函数sayHi的引用已通过但未在任何地方调用。您必须调用回调为

callback.call();