У меня есть запрос БД, который возвращает кучу данных на основе местоположения из моей БД. Я заканчиваю список объектов (которые я вставляю в один объект и console.log(), чтобы видеть, что внутри).Группировка объектов javascript по общему значению
Каждый объект представляет собой запись от пользователя, который содержит заметки на месте:
Он содержит: название магазина, адрес, идентификатор пользователя, заметки.
Так много людей могут посетить место и написать разные заметки. То, что я хочу сделать, - это разместить местоположения в Google Map (JS API) и типа группы по местоположению, поэтому, когда маркер щелкнут, он содержит все заметки для этого местоположения.
Так что я думал о группировке объектов, возвращаемых по адресу, затем для каждого адреса начерпывайте маркер и прокручивайте его.
for (var i = 0; i < rowCountVisits; i++) {
var storelatlng = new google.maps.LatLng(
parseFloat(result[2].latVisit[i]),
parseFloat(result[2].lngVisit[i]));
locationsObjVisits.push({
storelatlng: storelatlng,
vName: result[2].vName[i],
address: result[2].locationVisit[i],
date: result[2].dateVisit[i],
notes: result[2].notes[i],
usersName: result[2].user.thisName[i],
thisColour: result[2].user.thisColour[i]
});
}
Так что местоположенияObjVisits ... Я не уверен, что с этим делать. Есть идеи?
Это как раз то, что я хочу, но проблема здесь. Он группирует массивы по адресам, но в каждом из подсетей locationObj содержатся все объекты, возвращаемые с сервера, причем они не включают только те, у которых есть соответствующий адрес ... знаете ли вы, что я имею в виду? – JamesG
Упс. Я исправил проблему. –
Да, это так! Спасибо друг! Не думал бы делать что-нибудь подобное, разумно элегантное решение – JamesG