这个Google Maps APIv3代码中(marker,i)的含义是什么?

时间:2012-04-15 22:24:52

标签: javascript maps

                    google.maps.event.addListener(marker, 'rightclick', (function(marker, i) {
                return function() {

                marker.setMap(null);

                }
                })(marker, i));

我从网上获得了这个代码并且效果非常好。我不确定“(标记,i)”的含义是否在函数的尾部。有人可以解释一下这个吗?

谢谢!

2 个答案:

答案 0 :(得分:0)

这是一个自我调用的功能。

(marker, i)是调用函数时传递的参数。

答案 1 :(得分:0)

重点是创建一个新范围。

如果您这样做:

google.maps.event.addListener(marker, 'rightclick', function() {
        marker.setMap(null);
    }
});

如果marker稍后更改,它将失败。此代码可能在循环中使用。但是,i毫无意义。它可以简化为:

google.maps.event.addListener(marker, 'rightclick', (function(marker) {
    return function() {
        marker.setMap(null);
    }
})(marker));