есть фрагмент кода, который возвращает геоданные пользователя(широта, долгота) в таком варианте:
как отсюда можно вытащить только широту и долготу?
function getCurrentLocation(options) {
return new Promise((resolve, reject) => {
navigator.geolocation.getCurrentPosition(resolve, ({code, message}) =>
reject(Object.assign(new Error(message), {name: "PositionError", code})),
options);
});
};
async function inout() {
try {
console.log(await this.getCurrentLocation({
enableHighAccuracy: true,
timeout: 5000,
maximumAge: 0
}));
} catch (e) {
if (e.name == 'PositionError') {
console.log(e.message + ". code = " + e.code);
}
}
};
inout().catch(e => console.log(e)); // User denied geolocation prompt. code = 1
как отсюда можно вытащить только широту и долготу?
Если в отдельные const-переменные (latitude
и longitude
):
const {
coords: { latitude, longitude }
} = await this.getCurrentLocation();
Если в новый объект (obj
):
const obj = { ...({
latitude, longitude
} = (await this.getCurrentLocation()).coords) };
// или
const obj = { ...({
coords: { latitude, longitude }
} = await this.getCurrentLocation()) }.coords;
Эти выражения будут работать только внутри async
метода, конечно же.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Хотите улучшить этот вопрос? Обновите вопрос так, чтобы он вписывался в тематику Stack Overflow на русском
Написать функцию, которая принимает двузначное число и возвращает его в текстовом виде