gpt4 book ai didi

javascript - 通用 JavaScript

转载 作者:行者123 更新时间:2023-11-28 21:13:39 27 4
gpt4 key购买 nike

我已经有一段时间没有写js了,显然有点生疏了。试图理解以下问题。 getCurrentPosition successCallback 中的警报正确显示纬度,但最后一行警报未定义。为什么我的 client_location 函数在函数外部调用时不返回纬度?

client_location = function() {
if (navigator.geolocation) {
return navigator.geolocation.getCurrentPosition(function(position) {
alert(position.coords.latitude); ## RETURNS LATITUDE CORRECTLY ##
return position.coords.latitude;
});
}
};
alert(client_location()); ## RETURNS UNDEFINED ##

最佳答案

您正在向 getCurrentPosition 传递回调,并且您的警报位于该回调内。您的返回position.coords.latitude也在该回调内。您的 client_location 函数返回 getCurrentPosition 返回的任何内容,并且 getCurrentPosition doesn't return anything .

如果您想对纬度执行某些操作,则必须在回调中执行此操作;您可以向 client_location 提供如下回调:

client_location = function(callback) {
if (navigator.geolocation) {
return navigator.geolocation.getCurrentPosition(function(position) {
callback(position.coords.latitude);
});
}
};

client_location(function(lat) {
alert(lat);
});

关于javascript - 通用 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8102227/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com