Edit in JSFiddle

// $.Deferredバージョン
$(function () {
    "use strict";
    var d = $.Deferred();
    setTimeout(function () {
        // dのプロパティで解決
        d.resolve('deferred');
    }, 10);

    d.then(function (ans) {
        console.log(ans);
    });
});

// Promiseバージョン
(function () {
    "use strict";
    var p = new Promise(function (resolve, reject) {
        setTimeout(function () {
            // 4行目で受け取ったresolveで解決
            resolve('promise');
        }, 20);
    });

    p.then(function (ans) {
        console.log(ans);
    });
})();