Показать сообщение отдельно
  #4 (permalink)  
Старый 02.04.2020, 09:03
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,745

Есть тут особенность. Оператор await можно использовать только внутри асинхронных функций.
Поэтому надо обернуть код в асинхронную функцию, а потом вызывать ее

async function main () {
	async function f() {

	  let promise = new Promise((resolve, reject) => {
		setTimeout(() => resolve("готово!"), 1000)
	  });

	 return promise; // будет ждать, пока промис не выполнится (*)

	  
	}

	alert( await f());

}

main()


Другой вариант - просто использовать then

async function f() {

	  let promise = new Promise((resolve, reject) => {
		setTimeout(() => resolve("готово!"), 1000)
	  });

	 return promise; // будет ждать, пока промис не выполнится (*)

	  
	}

	f().then (res => alert(res))

Последний раз редактировалось voraa, 02.04.2020 в 09:07.
Ответить с цитированием