I was looking over questions related to setting up markers on a Google map, and though the following works perfectly fine for me, it was different from the other (and accepted) answers. I just wanted to see if I'm doing something incorrect, or just a different way.

Mine:

this references the marker, and you can pull any data you have associated with it simply by calling it within the loop that creates all of the markers.

google.maps.event.addListener(marker, "click", function(){
infowindow.setContent(this.position.toString());
infowindow.open(this.map, this);
});


Accepted:

 google.maps.event.addListener(marker, 'click', (function(marker, i) {
return function() {
infowindow.setContent(locations[i][0]);
infowindow.open(map, marker);
}
})(marker, i));

• Your version does seem fine and simple. Can you give the link to the answers you saw? – Quentin Pradet May 7 '13 at 7:48
• Cool, good to know. And here is the link: stackoverflow.com/questions/3059044/… – dgig May 8 '13 at 16:44
• I love how the answer goes : this is the simplest I could reduce it to ;) – konijn Apr 1 '14 at 1:00

Your code is definitely simpler, though I would not use it myself. There is no good reason to have an anonymous function, and if you have multiple markers, then you will have multiple clones of the same function. I would create a named function and use that function with addListener.
function setPositionAsContent(){