如何在函数中包含在typescript / javascript中执行其他函数的代码?

时间:2012-11-21 15:00:15

标签: javascript typescript

我使用以下编码模式:

function submit() {

    function submitModalDone() {
        // do something
    }

    function submitModalFail() {
        // do something
    }

    $.ajax(
       {
           url: "xxx"
       })
       .done(submitModalDone)
       .fail(submitModalFail);
}

我将submitModalDone和submitModalFail放在submit函数中,因为这些只是从$ .ajax调用。

但是,将代码添加到函数末尾和所有子函数之后是一个好主意。是否有更适合这种设计模式?看起来奇怪的是$ .ajax代码和其他代码就位于任何容器之外。

1 个答案:

答案 0 :(得分:1)

我认为这是一个体面的,描述性的模式。

你可能想要像这样构造它,但是:

var submit = (function () {

    function submitModalDone() {
        // do something
    }

    function submitModalFail() {
        // do something
    }

    return function () {
        $.ajax({
            url: "xxx"
        }).done(submitModalDone).fail(submitModalFail);
    };

}());

这样可以避免每次调用submitModalDone时创建submitModalFailsubmit