Показать сообщение отдельно
  #1 (permalink)  
Старый 03.07.2017, 16:01
Интересующийся
Отправить личное сообщение для SergeyERjs Посмотреть профиль Найти все сообщения от SergeyERjs
 
Регистрация: 03.07.2017
Сообщений: 19

Асинхронный вызов в синхронный
Всем привет.

Есть такой код:
function mainProcess() {
	// изменять нельзя
	console.log("begin");
	console.log(asyncFunc());
	console.log("end");
}

function asyncFunc(result) {
	if (result !== undefined) {
		console.log("then");
		return result;
	}
	setTimeout(function() {
		//console.log("timeout done");
		asyncFunc("then");
		//result = "then";
	}, 2000);
}

mainProcess();
/*  Результат:
begin
undefined
end
then
*/


Можно ли, не изменяя mainProcess, сделать так, чтобы asyncFunc выполнялась как бы синхронно?
Т.е. результат должен быть такой:
/*
begin
then
end
*/

Последний раз редактировалось SergeyERjs, 03.07.2017 в 16:05. Причина: добавил [JS run]
Ответить с цитированием