다시 작성 전:
바이두 지도의 좌표 변환을 위한 JavaScript API 예제공식 예제는 다음과 같습니다.
var points = [new BMap.Point(116.3786889372559,39.90762965106183), new BMap.Point(116.38632786853032,39.90795884517671), new BMap.Point(116.39534009082035,39.907432133833574), new BMap.Point(116.40624058825688,39.90789300648029), new BMap.Point(116.41413701159672,39.90795884517671) ];//地图初始化var bm = new BMap.Map("allmap"); bm.centerAndZoom(new BMap.Point(116.378688937,39.9076296510), 15);//坐标转换完之后的回调函数translateCallback = function (data){ if(data.status === 0) {for (var i = 0; i < data.points.length; i++) { bm.addOverlay(new BMap.Marker(data.points[i])); bm.setCenter(data.points[i]); } } } setTimeout(function(){var convertor = new BMap.Convertor(); convertor.translate(points, 1, 5, translateCallback) }, 1000);
다시 작성 후:
위 코드를 기존 JavaScript 콜백 함수 형식으로 다시 작성합니다.
function translate(points,callback){ var convertor=new BMap.Convertor(); convertor.translate(points, 1, 5, callback) translateCallback = function (data){if(data.status === 0) { var res=[]; //res用来存放转换后的points数组 for (var i = 0; i < data.points.length; i++) { bm.addOverlay(new BMap.Marker(data.points[i])); res.push(data.points[i]); } callback(res) } } }//再调用translate函数,translate(points,function(data){ console.log(data); //data为转换后的points数组})
다시 작성한 후 번역 함수는 두 개의 매개변수를 허용합니다. 첫 번째 매개변수는 원래 Baidu 포인트 배열이고 두 번째 매개변수는 콜백 함수에 전달됩니다.
위 내용은 기존 콜백 함수로 다시 작성된 예시 튜토리얼을 공유하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!