Skip to content

Instantly share code, notes, and snippets.

function asyncFunc1 () {
console.log("Выполняюсь 1");
return new Promise(function(resolve, reject) {
setTimeout( () => resolve({message: "First done!"}), 200 );
});
};
function asyncFunc2 () {
console.log("Выполняюсь 2");
return new Promise(function(resolve, reject) {
asyncFunc1().then(function( data ) {
console.log( data.message );
return asyncFunc2();
}).then(function( data_2 ) {
console.log( data_2.message );
return asyncFunc3();
}).then(function( data_3 ) {
console.log( data_3.message );
// Тут делаем наши дела после того, как все функции отработали
async function startAsync() {
let data_1 = await asyncFunc1(); // Функция работает как синхронная
let data_2 = await asyncFunc2(); // Затем эта функция работает как синхронная
let data_3 = await asyncFunc3(); // Наконец эта функция работает как синхронная
// Делаем то, что хотели сделать лишь при завершении работы всех трёх функций
console.log(data1.message, data2.message, data3.message);
};
startAsync();
asyncFunc1().then(function( data ) {
console.log( data.message ); // Выводим результат первой функции
asyncFunc2().then(function( data ) {
console.log( data.message ); // Выводим результат второй функции
asyncFunc3().then(function( data ) {
console.log( data.message ); // Выводим результат третьей функции
// Тут делаем наши дела после того, как все функции отработали
console.log("Всё!");
});
function asyncFunc1 () {
return new Promise(function(resolve, reject) {
setTimeout( () => resolve({message: "First done!"}), 300 );
});
};
function asyncFunc2 () {
return new Promise(function(resolve, reject) {
setTimeout( () => resolve({message: "Second done!"}), 200 );
});
@derzunov
derzunov / medium__async-await__full.es6
Last active August 18, 2016 12:33
Async/Await example
function asyncFunc1 () {
return new Promise(function(resolve, reject) {
setTimeout( () => resolve({message: "First done!"}), 300 );
});
};
function asyncFunc2 () {
return new Promise(function(resolve, reject) {
setTimeout( () => resolve({message: "Second done!"}), 200 );
});
console.log "Hello from Gist!"