我正在学习JavaScript,并慢慢地逐渐理解为什么某个页面不起作用:)
我正在做这样的事情:
<a onClick="removeAllMarkers(this)" href="#" >Remove All Markers</a>
认为发送这个是正确的方法。但我认为我并不真正理解“这”在我目前的情况中的作用。
当我按下此页面上“清除所有标记”的链接时,我收到了JavaScript控制台错误: http://www.comehike.com/outdoors/trees/add_spotted_trees.php?hike_id=108
该页面具有登录凭据:test@comehike.com |密码
任何想法我从根本上做错了什么以及清除标记[]数组的最佳方法是什么?
我目前正在做这样的事情:
if (markers)
{
for (i in markers)
{
markers[i].setMap(null);
markers[i] = null;
}
}
但遗憾的是,这正是出现错误的部分。建议? :)
这是页面
答案 0 :(得分:3)
将数组元素设置为null
不会将其从数组中删除。
要清除数组,请将变量指定给新的空数组:
markers = [];
或将其length
属性设置为0:
markers.length = 0;
在循环遍历数组并在每个数组上调用.setMap(null)
后执行此操作。
仅删除数组中的最后一项:
markers.pop();
答案 1 :(得分:2)
有关详细信息,请参阅: