Promises - Sequence

Run all

by db_dev

JavaScript

/*let promiseToCleanTheRoom = new Promise(function(resolve, reject) {
    //cleaning the room
    let isClean = false;
	
    if (isClean) {
        resolve("Clean");
    } else {
        reject("Not Clean");
    }
});

promiseToCleanTheRoom.then(function(fromResolve){
	console.log('the room is' + fromResolve)
}).catch(function(fromReject){
	console.log('the room is ' + fromReject)
});*/

let cleanRoom = function() {
	return new Promise(function(resolve, reject){
		resolve("Cleaned the Room");
	});
};

let removeGarbage = function(message) {
	return new Promise(function(resolve, reject){
		resolve(message + " removed Garbage");
	});
};

let winIceCream = function(message) {
	return new Promise(function(resolve, reject){
		resolve(message + " won Icecream");
	});
};

cleanRoom().then(function(result){
	//Only runs when this promis is finished
	//console.log("1 " + result);
	return removeGarbage(result);

}).then(function(result){
	// waits for garbade to be removed
	//console.log("2 " + result);
	return winIceCream(result);

}).then(function(result){
	// Runs when all promises are fulfilled
	//console.log('finished!');
	//console.log("3 " + result);
	console.log(result);
});

// All of them
/*Promise.all([cleanRoom(), removeGarbage(), winIceCream()]).then(function(){
	console.log('all done!')
});

    Promise.race([cleanRoom(), removeGarbage(), winIceCream()]).then(function() {
        console.log('one is finished');
    });
*/

// Change Toggle Variable 
/*$("#toggle").change(function(){
	thisIsOn = !thisIsOn;
	checkIsOn().then(function(result){
		$("#returnToMe").text(result);
	}).catch(function(result){
		$("#returnToMe").text(result);
	}).then(function(result){
		return isInputFilled(message + result);
	});
});*/