google maps v3 setMap pas défini lorsque vous essayez de supprimer tous les marqueurs

J'ai vu des gens ici expliquer cette fonction:

//REMOVE All MARKERS FUNCTION
    //Removes all markers currently on map
    //PARAMS: None
    function removeAllMarkers(){//removes all markers from map
        if (markersArray) {
            for (i in markersArray) {
                markersArray[i].setMap(null);
                markersArray = [];
                markersInfoArray = [];
            };
        };
    };

mais j'obtiens une erreur javascript...

Sur Erreur
markersArray[i].setMap n'est pas une fonction

La page est: http://www.focus-on-plants.com/locator.php

des idées???

<---------------mise à Jour--------------------->

j'ai essayé les suggestions et également déplacé le MarkersArray=[] et markersInfoArray = [] à côté de la boucle, donc j'ai eu ceci:

for( var i = 0; i < markersArray.length; i++ ){
    markersArray[i].setMap(null);
}

Mais j'obtiens le même error markersArray[i].setMap is not a function

donc j'ai regardé autour et j'ai essayé cette méthode:

function removeAllMarkers(){//removes all markers from map
    alert('REMOVE MARKERS - markersArray count:'+ markersArray.length);
    while(markersArray[0]){
        markersArray.pop().setMap(null);
        markersInfoArray.pop()
    }
    markersArray.length = 0;
    markersInfoArray.length = 0;
};

et j'obtiens toujours la même erreur, ce qui donne? son presque comme si le setMap() n'existe pas, j'ai lu dans un autre thread ici que ce changement de set_map à setMap() mais ceux-ci ne fonctionnent pas pour moi non plus 🙁

OriginalL'auteur Dizzy Bryan High | 2010-11-09