Created
December 20, 2014 19:08
-
-
Save devdays/0327d768eff7485d75da to your computer and use it in GitHub Desktop.
Object JavaScript - Long Running Function in Module
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
define(function (require) { | |
"use strict"; | |
// using simplified CommonJS syntax so it is clear what vars I can use in this | |
// function and not to confuse the order of them | |
var Q = require('q'); | |
// Add other libraries such a: var amplify = require('amplify'); | |
// a private method that delays | |
var count = function (beginningNumber, endingNumber) { | |
var deferral = Q.defer(); | |
var newNumber = 0; | |
if (endingNumber < beginningNumber) { | |
deferral.reject("endingNumber before beginningNumber"); | |
} | |
// do something that takes some time | |
for (var i = beginningNumber; i < endingNumber; i++) { | |
Q.delay(10); | |
newNumber += i; | |
} | |
console.log("in sampleQ: " + newNumber + typeof(newNumber)); | |
deferral.resolve(newNumber); | |
return deferral.promise; | |
}; return { | |
count: count | |
}; | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment