Edit in JSFiddle

$(function () {
    "use strict";
    var async = function () {
        // 非同期の処理を書いてresolve()を呼ぶべき
        var d = $.Deferred();
        d.done(function () {
            console.log("done");
        });
        d.fail(function () {
            console.log("fail");
        });
        return d;
    };

    async().resolve();
});