這篇文章給大家分享的內容是使用js取得本地經緯度,有需要的朋友可以參考一下
一個最簡單的呼叫方法
window.navigator.geolocation.getCurrentPosition(function (position) { console.log(position.coords.latitude) console.log(position.coords.longitude) })
封裝好的程式碼如下:
function getPosition () { return new Promise((resolve, reject) => { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(function (position) { let latitude = position.coords.latitude let longitude = position.coords.longitude let data = { latitude: latitude, longitude: longitude } resolve(data) }, function () { reject(arguments) }) } else { reject('你的浏览器不支持当前地理位置信息获取') } }) }
呼叫方法如下:
// 获取当前经纬度坐标 getPosition().then(result => { // 返回结果示例: // {latitude: 30.318030999999998, longitude: 120.05561639999999} // 一般小数点后只取六位,所以用以下代码搞定 let queryData = { longtitude: String(result.longitude).match(/\d+\.\d{0,6}/)[0], latitude: String(result.latitude).match(/\d+\.\d{0,6}/)[0], channelType: '00' } console.log(queryData) // 以下放置获取坐标后你要执行的代码: // ... }).catch(err => { console.log(err) })
記得,這是一個非同步操作,所以取得座標後需要執行的程式碼不能直接寫在函數後面,而是應該寫在then裡面(參考註解所寫的位置)
相關推薦:
#以上是怎麼使用JS得到本地經緯度的詳細內容。更多資訊請關注PHP中文網其他相關文章!