[...towns.entries()]
- это массив массива (2). Просто выберите первый элемент первого отсортированного элемента. Кстати, вам не нужна часть entries
, просто разложите Map
на Array
.
В качестве альтернативы вы можете использовать редуктор для создания таблицы частот, включенной в фрагмент te.
let towns = new Map();
document.querySelectorAll('a').forEach(href => {
const town = href.textContent.split(',')[1].trim();
if(towns.has(town)) {
towns.set(town, towns.get(town)+1)
} else {
towns.set(town, 1);
}
});
const most = [...towns].sort((a, b) => b[1] - a[1])[0][0];
// ^ here
console.log(most);
// alternative use reduce to create a frequency table
const freqs = [...document.querySelectorAll('a')]
.reduce( (acc, val) => {
const town = val.textContent.split(',')[1].trim();
return {...acc, [town]: acc[town] ? acc[town] + 1 : 1 };
}, {});
// now you need entries ;)
console.log(Object.entries(freqs).sort( (a, b) => b[1] - a[1] )[0][0]);
a {display: block}
<a href="/search/details/50/1/" class="address">9207 Odin Wy, Bothell</a>
<a href="/search/details/50/1/" class="address">9207 Odin Wy, Bellevue</a>
<a href="/search/details/50/1/" class="address">9207 Odin Wy, Kirkland</a>
<a href="/search/details/50/1/" class="address">9207 Odin Wy, Monroe</a>
<a href="/search/details/50/1/" class="address">9207 Odin Wy, Bothell</a>
<a href="/search/details/50/1/" class="address">9207 Odin Wy, Bothell</a>
<a href="/search/details/50/1/" class="address">9207 Odin Wy, Bothell</a>