Я просматриваю руководства API карт Google и заметил, что демо на этой странице: https://developers.google.com/maps/documentation/javascript/marker-clustering использует функции, определенные внутри initMap(), по-видимому, без их фактического вызова. Единственная связанная информация, которую я могу найти, - это люди, ошибочно добавляющие() в конце функции при определении или передаче как переменной, но я не вижу, что это происходит здесь - Как выполняются эти функции?Функции, выполняемые при определении? -JS
function initMap() {
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 3,
center: {lat: -28.024, lng: 140.887}
});
// Create an array of alphabetical characters used to label the markers.
var labels = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
// Add some markers to the map.
// Note: The code uses the JavaScript Array.prototype.map() method to
// create an array of markers based on a given "locations" array.
// The map() method here has nothing to do with the Google Maps API.
var markers = locations.map(function(location, i) {
return new google.maps.Marker({
position: location,
label: labels[i % labels.length]
});
});
// Add a marker clusterer to manage the markers.
var markerCluster = new MarkerClusterer(map, markers,
{imagePath: 'https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m'});
}
Вы говорите, что установка варов в конструкторе с помощью проходованного элемента finder задает страницу посредством ассоциации/просто настройка объекта выполняет работу, а функция фактически не вызывает/выполняет? –
Я думаю, что теперь вижу, что вы сейчас говорите, конструктор не просто создает новый объект, но и выполняет другую работу, создавая и применяя карту - конструктор - это функция на работе, а не только что созданный объект «карта», и его называют «новым». Верный? –
Да, это в основном это. Вы можете ознакомиться с OO JS, чтобы узнать больше об этом. –