加载坐标时的距离误差
Range error when loading coordinates
我有一个联系人页面,它从localstorage
获取坐标这样的 localStorage.getItem("jc")
我已经使用eval将字符串转换为变量
var thecoords = eval(localStorage.getItem("jc"));
并使用坐标以这些坐标为中心,例如
var center = new google.maps.LatLng(thecoords);
并平移到该位置
map.panTo(center);
但是我得到这个错误
Uncaught RangeError: Maximum call stack size exceeded
我检查了我的坐标,它们的顺序是正确的lat,lng
google.maps.LatLng构造函数接受两个数字作为参数,而不是你传递给它的任何数字:
var center = new google.maps.LatLng(thecoords); // and pan'ed to that location
使用google.maps.LatLngLiteral
对象的示例。
概念验证
代码片段:(来自jsfiddle,由于沙箱而无法实际工作)
localStorage.setItem('jc', JSON.stringify({lat: 40.7127837, lng: -74.0059413}));
function initialize() {
var map = new google.maps.Map(
document.getElementById("map_canvas"), {
center: new google.maps.LatLng(37.4419, -122.1419),
zoom: 13,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
console.log(localStorage.getItem('jc'));
console.log()
var marker = new google.maps.Marker({
map: map,
position: JSON.parse(localStorage.getItem('jc'))
});
map.panTo(JSON.parse(localStorage.getItem('jc')));
}
google.maps.event.addDomListener(window, "load", initialize);
html, body, #map_canvas {
height: 100%;
width: 100%;
margin: 0px;
padding: 0px
}
<script src="https://maps.googleapis.com/maps/api/js"></script>
<input id="clear" value="clear store" type="button" onclick="clearLocalStorage()" />
<div id="panel">
<div id="color-palette"></div>
</div>
<div id="map_canvas" style="width:750px; height:450px; border: 2px solid #3872ac;"></div>
不,您不需要使用eval()。存储在本地存储器中的项已经是一个变量。根本不要使用邪恶的eval()。
首先通过控制台记录坐标,并将其与Google Maps API文档进行比较。
相关文章:
- 计算php或js中的距离
- 使用谷歌地图api计算距离并将其设置在表格中<td>
- 浮点0.2+0.1舍入误差
- 如何在谷歌地图api v3中获得无公里驾驶距离
- 铯JS-两点之间的距离
- 地理位置和计算从当前纬度/液化天然气到另一纬度/液化石油气的距离
- cloudSearch:范围从0到某个值之间的距离
- 计算数据点阵列与平均值的最大距离,并返回相关数据点
- 远距离变换元素的宽度/高度(以像素为单位)
- 将谷歌地图制作成一定的距离(米)
- 视频古拉尔 2 表示角度 2 404 误差
- 如何获取所有旅行模式的距离和持续时间,例如驾驶,公交,骑自行车,在我的页面中步行以及将其存储在数据库中
- 无法与光线投射器保持距离
- 矩阵,距离,JavaScript
- 查找图像上两点之间的距离,即使缩放图像也是如此
- 谷歌距离矩阵 API 没有输出
- 查找与通过两次调用地理编码创建的两个 latlng 对象的距离
- 在不使用 CSS 的情况下,将元素与浏览器屏幕顶部保持设定的距离
- 计算地理位置距离返回 NaN
- 加载坐标时的距离误差