我想获得一些函数的返回值。
脚本
navigator.geolocation.getCurrentPosition(function(position) {
var latitude = positon.coords.latitude; // I want to return this
});
var mapContainer = document.getElementById('map'),
mapOption = {
center : new daum.maps.LatLng(***I need latitude here***),
level : 3
};
var map = new daum.maps.Map(mapContainer, mpOption);
/脚本
实际上,这是我的代码,但我不想要这个。我只想要返回值。
navigator.geolocation.getCurrentPosition(function(position) {
var mapContainer = document.getElementById('map'),
mapOption = {
center : new daum.maps.LatLng(position.coords.latitude,
position.coords.longitude),
level : 3
};
var map = new daum.maps.Map(mapContainer, mapOption);
});
答案 0 :(得分:0)
我已复制粘贴您的示例并尝试执行它。几乎没有什么基本错误。首先请正确关闭大括号。
navigator.geolocation.getCurrentPosition(function(position) {
var latitude = positon.coords.latitude; // I want to return this
});
您已撰写)}
而不是})
。
然后主要问题是var latitude = positon.coords.latitude;
行中位置的拼写错误。你应该写下你在函数中传递的任何内容,并且你已经通过了position
。
纠正这两个问题,你的代码会起作用。
带警报的示例代码段。
var latitude;
navigator.geolocation.getCurrentPosition(function(position) {
latitude = position.coords.latitude; // I want to return this
alert("Current latitude is : " + latitude);
});
在控制台中运行此代码,您应该获得具有纬度值的警报。
以下是您的代码段。看看这是否适合你。我刚刚在函数范围之外声明了position
变量,以便您以后可以访问/使用它。
var latitude = 0; // Initial value of latitude variable
navigator.geolocation.getCurrentPosition(function(position) {
latitude = position.coords.latitude; // Here you are setting the exact value of latitude
});
var mapContainer = document.getElementById('map'),
mapOption = {
center : new daum.maps.LatLng(latitude),
level : 3
};
var map = new daum.maps.Map(mapContainer, mapOption);