function foo(){
return new Promise(function(resolve, reject){
setTimeout(function(){
console.log("This is main promise");
resolve("Promise is resolved");
}, 5000);
});
}
foo().then(function(result){
console.log("Data from promise is " + result);
setTimeout(function(){
console.log("Wait done");
}, 6000);
}).then(function(){
console.log("This is success");
}, function(){
console.log("This is failure");
});