需要JavaScript地理位置和一般JavaScript帮助
我正在“尝试”使用JavaScript的地理位置函数,但我认为JavaScript的工作方式有问题。我发现了许多关于如何使用地理定位功能的示例,它们基本上都是这样的:需要JavaScript地理位置和一般JavaScript帮助,javascript,function,geolocation,Javascript,Function,Geolocation,我正在“尝试”使用JavaScript的地理位置函数,但我认为JavaScript的工作方式有问题。我发现了许多关于如何使用地理定位功能的示例,它们基本上都是这样的: navigator.geolocation.getCurrentPosition(function(position){alert("Your Coordinates:\nLatitude: " + position.coords.latitude + "\nLongitude: " + position.coords.longi
navigator.geolocation.getCurrentPosition(function(position){alert("Your Coordinates:\nLatitude: " + position.coords.latitude + "\nLongitude: " + position.coords.longitude);});
function geoMe(){
var position = navigator.geolocation.getCurrentPosition();
var geoLocationDiv = document.getElementById('geoLocationDiv');
var latitude = position.coords.latitude;
var longitude = position.coords.longitude;
geoLocationDiv.innerHTML = latitude + "," + longitude;
}
上面的代码可以工作,但我正在尝试这样做:
navigator.geolocation.getCurrentPosition(function(position){alert("Your Coordinates:\nLatitude: " + position.coords.latitude + "\nLongitude: " + position.coords.longitude);});
function geoMe(){
var position = navigator.geolocation.getCurrentPosition();
var geoLocationDiv = document.getElementById('geoLocationDiv');
var latitude = position.coords.latitude;
var longitude = position.coords.longitude;
geoLocationDiv.innerHTML = latitude + "," + longitude;
}
正如你可能猜到的,它不起作用。我从来都不擅长解释像示例中那样被“阻塞”在一起的代码,所以我很困惑
在查看示例代码时,似乎有一个名为“getCurrentPosition”的函数。现在,这就是我迷路的地方。看起来有一个函数作为参数传递给getCurrentPosition,它有一个名为“position”的参数[作为参数]。“位置”参数从何而来???我已经看到函数(没有实际的函数名)被用作参数的地方,但这确实让我感到困惑。通常,我会这样做:
function functionName(parameter1, parameter2, parameterN){
function body
}
我知道这样做应该是高级的,但我是一个简单的人,我喜欢我的代码简单,我喜欢我的函数有名字
那么,有没有人能帮我把这些地理定位的东西按照我想要的方式工作?并且,也许在此过程中,解释一下这种奇怪的JavaScript函数方法
谢谢你,祝你今天愉快。:-) 这是:
function geoMe () {
navigator.geolocation.getCurrentPosition(function ( pos ) {
document.getElementById('geoLocationDiv').innerHTML =
pos.coords.latitude + "," + pos.coords.longitude;
});
}
现场演示:
必须将函数对象传递给getCurrentPosition
方法。该函数充当回调函数,并在用户授予访问其位置的权限时调用。在我们的例子中,回调函数是一个匿名函数表达式。getCurrentPosition
方法用于调用将位置对象传递给它的回调。因此,我们的函数表达式定义了一个表示位置对象的形式参数(pos
)。在回调中,我们可以访问该位置对象。此:
function geoMe () {
navigator.geolocation.getCurrentPosition(function ( pos ) {
document.getElementById('geoLocationDiv').innerHTML =
pos.coords.latitude + "," + pos.coords.longitude;
});
}
现场演示:
必须将函数对象传递给
getCurrentPosition
方法。该函数充当回调函数,并在用户授予访问其位置的权限时调用。在我们的例子中,回调函数是一个匿名函数表达式。getCurrentPosition
方法用于调用将位置对象传递给它的回调。因此,我们的函数表达式定义了一个表示位置对象的形式参数(pos
)。在回调函数中,我们可以访问Position对象。如果您只是将getCurrentPosition视为接受一个参数的另一个函数,这并不奇怪。但是,该参数恰好是一个匿名函数。下面是一个非常简单的示例来说明回调函数的概念
function sayHi(myFunction) {
alert(myFunction());
}
sayHi(function() {return 'Hello World'});
在上面的例子中,sayHi是一个接受名为myFunction的参数的函数,而myFunction只是一个返回字符串“Hello World”的函数。这显然是一个过于简化的示例,您可以通过传递字符串轻松实现。但是,当函数变得更复杂时,使用这种方法可以提供更大的灵活性和更清晰的代码。如果您只是将getCurrentPosition视为接受一个参数的另一个函数,这并不奇怪。但是,该参数恰好是一个匿名函数。下面是一个非常简单的示例来说明回调函数的概念
function sayHi(myFunction) {
alert(myFunction());
}
sayHi(function() {return 'Hello World'});
在上面的例子中,sayHi是一个接受名为myFunction的参数的函数,而myFunction只是一个返回字符串“Hello World”的函数。这显然是一个过于简化的示例,您可以通过传递字符串轻松实现。但是,当函数变得更复杂时,使用这种方法可以让您获得更大的灵活性和更清晰的代码。您似乎不是一个JavaScript程序员。
getCurrentPosition
方法需要一个回调函数作为其第一个参数。然后,回调函数接收位置
对象作为其第一个参数。不,我不是一个普通的JavaScript程序员。我知道基本知识,就这样。好吧,客户端(浏览器)JavaScript都是关于回调函数的,我可以告诉你,:)
你似乎不是JavaScript程序员。getCurrentPosition
方法需要一个回调函数作为其第一个参数。然后,回调函数接收位置
对象作为其第一个参数。不,我不是一个普通的JavaScript程序员。我知道基本知识,就是这样。客户端(浏览器)JavaScript都是关于回调函数的,我可以告诉你:)
(1)你必须将函数对象作为参数传递给getCurrentPosition方法?没有办法用另一种方式,更直接的方式?(2) 你必须使用匿名函数吗?@Brian(1)Afaik。您可以阅读该方法的说明。此外,MDN还有一个新功能。(2) 任何函数对象。我将查看链接,谢谢。看起来我需要学习“匿名函数”和“回调函数”。(1)必须将函数对象作为参数传递给getCurrentPosition方法吗?没有办法用另一种方式,更直接的方式?(2) 你必须使用匿名函数吗?@Brian(1)Afaik。您可以阅读该方法的说明。此外,MDN还有一个新功能。(2) 任何函数对象。我将查看链接,谢谢。看起来我需要学习“匿名函数”和“回调函数”。嗯。。。看起来我要在谷歌上搜索“匿名函数”和“回调函数”。谢谢。嗯。。。看起来我要在谷歌上搜索“匿名函数”和“回调函数”。非常感谢。