使用匿名函数作为javascript对象的一部分

时间:2013-05-10 14:03:35

标签: javascript object anonymous-function

我将向您展示两个片段。

这很好用:

this.searchBox = new Foo.UI.SearchBox(this.input, {
    autoCompleteSearchComplete: processSearchResults
});

这根本不起作用:

this.searchBox = new Foo.UI.SearchBox(this.input, {
    autoCompleteSearchComplete: function() {
        processSearchResults
    }
});

我需要将processSearchResults调用放在if语句中,以检查我的搜索文本输入($('.search'))是否在其中写入了任何文本。

我的第一个想法是使用此函数类型表示法,但它不起作用。这就好像根本不会调用processSearchResults

有什么建议吗?

1 个答案:

答案 0 :(得分:4)

那是因为你实际上没有调用那个函数。这是正确的:

this.searchBox = new Foo.UI.SearchBox(this.input, {
    autoCompleteSearchComplete: function() {
        if (...) {
            processSearchResults();
        }
    }
});