日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

高德地图和百度地图接口封装遇到的问题(三):参数集中插入参数以及引用未定义参数

發布時間:2025/3/21 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 高德地图和百度地图接口封装遇到的问题(三):参数集中插入参数以及引用未定义参数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.向參數集中插入新參數:

? ? ? ?由于要將高德地圖和百度地圖提供的方法封裝成一個統一的方法,而對于某些功能來說可能傳進來的參數個數不一樣,比如下面的繪制折線功能:

//高德地圖// 折線的節點坐標數組,每個元素為 AMap.LngLat 對象 var path = [new AMap.LngLat(116.368904,39.913423),new AMap.LngLat(116.382122,39.901176),new AMap.LngLat(116.387271,39.912501),new AMap.LngLat(116.398258,39.904600) ];// 創建折線實例 var polyline = new AMap.Polyline({path: path, borderWeight: 2, // 線條寬度,默認為 1strokeColor: 'red', // 線條顏色lineJoin: 'round' // 折線拐點連接處樣式 });// 將折線添加至地圖實例 map.add(polyline); //百度地圖// 創建polyline對象 var pois = [new BMap.Point(116.350658,39.938285),new BMap.Point(116.386446,39.939281),new BMap.Point(116.389034,39.913828),new BMap.Point(116.442501,39.914603) ]; var polyline =new BMap.Polyline(pois, {enableEditing: false,//是否啟用線編輯,默認為falsestrokeWeight:'8',//折線的寬度,以像素為單位strokeOpacity: 0.8,//折線的透明度,取值范圍0 - 1strokeColor:"#18a45b" //折線顏色 });map.addOverlay(polyline); //增加折線

可以看出高德地圖需要傳入一個包含點數組的參數集,百度地圖需要擦傳入點數組和一個參數集。如果要統一的話,可以直接將點數組和參數集暴露出來,newPolyline(pointsArr,options){? }

對于百度來說就直接在方法里面:return new BMap.Polyline(pointsArr,options);

而對于高德來說就需要先把點數組傳進options中:options["path"]=pointsArr;? //這個就是向參數集中加入參數

return new AMap.Polyline(pointsArr,options);

2.參數集中引用一個未定義的參數

function test() {let options={enable:1,a:true}let poi=options.b;} 直接調用test函數不會報錯,通過console.log(options.b);輸出為undefined

?

總結

以上是生活随笔為你收集整理的高德地图和百度地图接口封装遇到的问题(三):参数集中插入参数以及引用未定义参数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。