функция после await не дожидается выполнения промиса
await должен по сути ждать пока отработает промис справа и затем вызывать функцию createMapAndRoute(), подскажите, что я наворотил не так
async function coordinatesOfPoints(arr) {
const url = `https://geocode-maps.yandex.ru/1.x/?format=json&apikey=`
const appiKey = '...'
const result = []
console.log(result.length)
await new Promise((res, rej) => {
arr.forEach(async (item) => {
const request = await fetch(`${url}${appiKey}&geocode=${item}`)
const response = await request.json()
let coordinate =
response.response.GeoObjectCollection.featureMember[0].GeoObject.Point
.pos
coordinate = coordinate
.split(' ')
.map((item) => (item = +item))
.reverse()
result.push(coordinate)
})
res()
})
console.log(result) //пустой массив, а хотелось бы массив с результатами
createMapAndRoute(result)
}
Источник: Stack Overflow на русском