Estoy tratando de filtrar una matriz de objetos con 3 filtros. Los dos primeros se ejecutan como se esperaba, pero el último no se ejecuta en absoluto. Hay mucho código en total, así que aquí está el enlace de Github: repositorio de Github
function FormatSearch() { return search.value.toLowerCase().replace("č", "c").replace("ć", "c").replace("š", "s").replace("ž", "z") } function FormatLocation() { return location.value.toLowerCase().replace("č", "c").replace("ć", "c").replace("š", "s").replace("ž", "z") } let filtered = allPosts //filter po imenu/opisu .filter(post => post.title.includes(FormatSearch()) || post.description.includes(FormatSearch())) //filter po kategoriji .filter(post => filters.includes(post.category) || filters.length == 0) //filter po lokaciji .filter(post => async function(){ let owner = await post.getOwner() return Boolean(owner.info[1].includes(FormatLocation()) || FormatLocation() == "") }) document.getElementById("posts").innerHTML = "" filtered.forEach(post => { post.addPost() })De acuerdo con VLAZ, puede elegir devolver una matriz de promesa y Promise.all o usar async/await en un bucle for que básicamente tiene la misma velocidad que el filtro.