var app = angular.module('app', []); app.controller('Ctrl', function($q) { function asyncHello(name) { var deferred = $q.defer(); deferred.resolve('Hello, ' + name); return deferred.promise; } var r = document.getElementById('result'); var promise = asyncHello('sato'); promise.then( function(msg) { r.innerHTML = msg; } ); });