Javascript 如何从google地图标记数组中找出单击了哪个标记

Javascript 如何从google地图标记数组中找出单击了哪个标记,javascript,google-maps,google-maps-api-3,callback,Javascript,Google Maps,Google Maps Api 3,Callback,我有一个标记对象数组标记。然后我使用for循环向它们添加事件侦听器。然而,我似乎不知道如何确定单击了哪些标记 以下是我现在掌握的代码: for(var i = 0; i < this.markers.length; i++) //adds listener to all markers { google.maps.event.addListener(this.markers[i], "click", () => { //need t

我有一个标记对象数组
标记
。然后我使用for循环向它们添加事件侦听器。然而,我似乎不知道如何确定单击了哪些标记

以下是我现在掌握的代码:

 for(var i = 0; i < this.markers.length; i++) //adds listener to all markers
 {
      google.maps.event.addListener(this.markers[i], "click", () =>
      {
            //need to get access to which marker was clicked
      }); 
 }
for(var i=0;i
{
//需要访问已单击的标记
}); 
}
我尝试过将参数传递给arrow函数,但似乎没有任何效果。有什么想法吗?只要函数可以返回正确标记的索引,就不需要使用箭头函数。

请阅读

以下是一个工作示例:

函数初始化(){
变量映射选项={
缩放:5,
mapTypeId:google.maps.mapTypeId.ROADMAP,
中心:新google.maps.LatLng(1,1)
};
变量位置=[
[新的google.maps.LatLng(0,0),'Marker 1','Marker 1'的信息窗口内容],
[new google.maps.LatLng(0,1),“Marker 2”,“Marker 2的信息窗口内容”],
[新的google.maps.LatLng(0,2),“Marker 3”,“Marker 3的信息窗口内容],
[new google.maps.LatLng(1,0),“Marker 4”,“Marker 4”的信息窗口内容],
[新的google.maps.LatLng(1,1),“Marker 5”,“Marker 5的信息窗口内容],
[新的google.maps.LatLng(1,2),'Marker 6','Marker 6'的信息窗口内容]
];
var map=new google.maps.map(document.getElementById('map-canvas'),mapOptions);
var infowindow=new google.maps.infowindow();
对于(变量i=0;i
#地图画布{
高度:200px;
}


如果您将回调函数设置为函数而不是箭头函数,
将是单击的标记答:谢谢,也许您对这个非常相关的赏金感兴趣: