Javascript拼图 - 一个班轮

时间:2010-11-11 17:47:57

标签: javascript callback

你可以在不抛出错误的情况下解决这个问题吗?答案是单行。这是一篇死寂的帖子,答案是在回复中提出的。我认为这是一个清除受访者的聪明方法,但我似乎无法在没有错误的情况下回答它。

显而易见的解决方案:

f.moo(alert(f.foo));

但是这会引发TypeError: callback is undefined { message="callback is undefined", more...}

var f = (function(){
  return {
    foo : "bar",
    moo : function(callback){
      callback.call(this)
    }
  }
})();
//alert "bar" by foo

2 个答案:

答案 0 :(得分:10)

你必须传递f.moo一个函数。您正在调用alert并传递alert的结果(这不是任何内容)。

f.moo(function() { alert(this.foo); });

答案 1 :(得分:2)

...嗯

alert(f.foo);

或者你忘了提一些要求了?