Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

239
Views
Asignar coordenadas de mapa en javascript devuelve indefinido
(async ( ) => { async function foo() { navigator.geolocation.getCurrentPosition(success, error, options) { var options = { enableHighAccuracy: true, timeout: 5000, maximumAge: 0 }; function success(pos) { var crd = pos.coords; console.log('Your current position is:'); console.log(`Latitude : ${crd.latitude}`); lat = crd.latitude; console.log(`Longitude: ${crd.longitude}`); long = crd.longitude; console.log(`More or less ${crd.accuracy} meters.`); return [lat, long]; } function error(err) { console.warn(`ERROR(${err.code}): ${err.message}`); } }; }; }) let result = await foo(); console.log(result); x = await result[1] console.log(x);

Estaba tratando de obtener las coordenadas del mapa del navegador y asignarlas a variables para compararlas con otras coordenadas y encontrar la proximidad a un lugar. pero sigue regresando

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

No queda claro a partir de su pregunta de dónde provienen estas "otras" coordenadas, ya sea que estén codificadas, o cargadas desde cookies, o localStorage, pero este ejemplo obtiene las coordenadas y las guarda en una matriz que es luego se guarda en localStorage, que se carga cada vez que se actualiza la página.

Utiliza una promesa para devolver los resultados de la búsqueda de geolocalización y un método asíncrono para la función principal.

Nota: debido a problemas de seguridad, esto no se ejecutará en un fragmento, pero se probó por completo.

 const posArr = JSON.parse(localStorage.getItem('pos')) || []; function getPos(options) { return new Promise((res, rej) => { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition( (pos) => res(pos), (err) => rej(logError(err)), options ); } }); } function logPos(data) { const { accuracy, latitude, longitude } = data.coords; console.log('Your current position is:'); console.log(`Latitude : ${latitude}`); console.log(`Longitude: ${longitude}`); console.log(`More or less ${accuracy} meters.`); posArr.push({ accuracy, latitude, longitude }); localStorage.setItem('pos', JSON.stringify(posArr)); } function logError(err) { const { code, message } = err; console.error(`Error code ${code}: ${message}`); } const options = { enableHighAccuracy: true, timeout: 5000, maximumAge: 0 }; async function main(options) { try { const response = await getPos(options); if (response) { logPos(response); console.log(posArr); } } catch (err) { console.log('Position not available.'); } } main();

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!