Функция возвращает промис. И что в этом такого?
function getData() {
return fetch( ... )
}
function filterData(data) {
return data.filter( ... )
}
function renderFilteredData(filteredData) {
// ...
}
function main() {
const dataPromise = getData()
const filteredDataPromise = dataPromise.then(filterData)
filteredDataPromise.then(renderFilteredData)
// Или попроще
getData()
.then(filterData)
.then(renderFilteredData)
}
Работая с асинхронностью вы не можете в привычном смысле работать с данными, но вы можете "Планировать" выполнение каких-то функций