可能重复:
如何解决 jslint 错误“不要在循环中创建函数。”</a>
公平警告,我是一个初学者。我正在开发一个 google maps api v3 项目 ( http://jsbin.com/ofepet/9/edit ),并且我在 JSBin 上有一个“不要在循环中创建函数”警告。我想修复它,但我使用的是我在别处得到的代码,所以我很难准确理解发生了什么——尤其是最后 7 行。
简而言之,我对代码的理解不够好,无法使函数脱离循环。错误出现在倒数第二行。
function setMarkers(map, markers) {
for (var i = 0; i < markers.length; i++) {
var sites = markers[i];
var siteLatLng = new google.maps.LatLng(sites[1], sites[2]);
var marker = new google.maps.Marker({
position: siteLatLng,
map: map,
title: sites[0],
zIndex: sites[3],
html: sites[4],
icon: featureImage
});
var contentString = "Some content";
google.maps.event.addListener(marker, "click", function () {
infowindow.setContent(this.html);
infowindow.open(map, this);
});
}
如何修复此错误?