promise and non promise

by Denise Nepraunig

HTML

<script src="//cdnjs.cloudflare.com/ajax/libs/q.js/0.9.2/q.min.js"></script>

JavaScript

function noPromise() {
    return 5;
}

function yesPromise() {
    return Q.delay(3000).thenResolve(10);
}

function somePromise(val) {
    return Q(val);
}


/*
This works like a charm, a mix of a promise and a non promise
Q.all([noPromise(), yesPromise()]).spread(function(nopromise, yespromise) {
    alert(nopromise + yespromise);
}).done();
*/

// what happens when functions don't return a promise?
// interesting - it also works...
Q.all([noPromise(), noPromise()]).spread(function(nopromise1, nopromise2) {
    alert(nopromise1 + nopromise2);
}).done();

/* this stuff works offline like a charm - silly cdn...
var aPromises = [];
aPromises.push(somePromise(1));
aPromises.push(somePromise(2));
aPromises.push(somePromise(3));

Q.all(aPromises).spread( function(val1, val2, val3) {
    alert(val1+val2+val3);
});
*/