如何 return 地理定位响应对象用作另一个函数的参数
How to return geolocation response object to use as a parameter for another function
我在函数和 HTML5 地理定位 API 方面得到了一些帮助。
我想使用用户当前位置(经度和纬度)生成 url。
我已经设法让代码找到当前用户的位置
并将 position.coords
对象分配给名为 coords 的变量。
我想知道的是我是否可以 return locationSuccess 函数中的对象然后将对象作为参数传递给 generateURL 函数,并检索纬度和经度以控制台记录完成 url.
我可能完全错了,但是一些帮助会很好。 TIA.
// app.js
function getUserLocation() {
function locationSuccess(position) {
console.log("success");
var coords = position.coords;
}
function locationError() {
console.log("error")
}
navigator.geolocation.getCurrentPosition(locationSuccess, locationError);
}
function generateURL() {
}
function app() {
getUserLocation();
}
window.onload = app();
返回对象有点麻烦,因为getCurrentPosition
函数是异步的。
您可以将 coords
对象作为参数传递给 generateURL
函数,并在 locationSuccess
函数内部调用它。
function getUserLocation() {
function locationSuccess(position) {
console.log("success");
var coords = position.coords;
generateURL(coords);
}
function locationError() {
console.log("error")
}
navigator.geolocation.getCurrentPosition(locationSuccess, locationError);
}
function generateURL(coords) {
var URL = 'http://example.com/?lat=' + coords.latitude + '&long=' + coords.longitude;
console.log(URL);
}
function app() {
getUserLocation();
}
window.onload = app();
JSFiddle // 由于 iframe 安全问题,代码段无法正常工作
将变量 position
作为参数传递给 generateURL()
函数。请参阅下面的修改和注释。
// app.js
function getUserLocation() {
function locationSuccess(position) {
console.log("success");
var coords = position.coords;
// Pass the object as a parameter to the generateURL() function.
generateURL(position);
}
function locationError() {
console.log("error")
}
navigator.geolocation.getCurrentPosition(locationSuccess, locationError);
}
// Added: variable position as a parameter to the function
function generateURL(position) {
console.log(position);
}
function app() {
getUserLocation();
}
window.onload = app();
我在函数和 HTML5 地理定位 API 方面得到了一些帮助。
我想使用用户当前位置(经度和纬度)生成 url。
我已经设法让代码找到当前用户的位置
并将 position.coords
对象分配给名为 coords 的变量。
我想知道的是我是否可以 return locationSuccess 函数中的对象然后将对象作为参数传递给 generateURL 函数,并检索纬度和经度以控制台记录完成 url.
我可能完全错了,但是一些帮助会很好。 TIA.
// app.js
function getUserLocation() {
function locationSuccess(position) {
console.log("success");
var coords = position.coords;
}
function locationError() {
console.log("error")
}
navigator.geolocation.getCurrentPosition(locationSuccess, locationError);
}
function generateURL() {
}
function app() {
getUserLocation();
}
window.onload = app();
返回对象有点麻烦,因为getCurrentPosition
函数是异步的。
您可以将 coords
对象作为参数传递给 generateURL
函数,并在 locationSuccess
函数内部调用它。
function getUserLocation() {
function locationSuccess(position) {
console.log("success");
var coords = position.coords;
generateURL(coords);
}
function locationError() {
console.log("error")
}
navigator.geolocation.getCurrentPosition(locationSuccess, locationError);
}
function generateURL(coords) {
var URL = 'http://example.com/?lat=' + coords.latitude + '&long=' + coords.longitude;
console.log(URL);
}
function app() {
getUserLocation();
}
window.onload = app();
JSFiddle // 由于 iframe 安全问题,代码段无法正常工作
将变量 position
作为参数传递给 generateURL()
函数。请参阅下面的修改和注释。
// app.js
function getUserLocation() {
function locationSuccess(position) {
console.log("success");
var coords = position.coords;
// Pass the object as a parameter to the generateURL() function.
generateURL(position);
}
function locationError() {
console.log("error")
}
navigator.geolocation.getCurrentPosition(locationSuccess, locationError);
}
// Added: variable position as a parameter to the function
function generateURL(position) {
console.log(position);
}
function app() {
getUserLocation();
}
window.onload = app();