Use wrapper to encapsulate it so that it can be accessed both inside and outside the object
function createMarker(name, lat, lng, state){
var marker = new AMap.Marker({
position : new AMap.LngLat(lng, lat),
});
//the function mapMoveTo is not accessible here too
AMap.event.addListener(marker, "click",function(e){
//moveMapTo(key, name, state)
//or this.moveMapTo(key, name, state) will raise an unresolved function error
//you should write wrapper function as a member variable
_mapMoveTo(key, name, state);
});
}
var _mapMoveTo = function(key, name, state){
//TODO
}
this.mapMoveTo = function(key, name, state) {
_mapMoveTo(key, name, state);
}
}