Получение названия города от широты / долготы в Javascript

Я могу получить широту / долготу из следующего кода. и на основе этого значения я должен получить название города.

    <!DOCTYPE html>
    <html>
    <body>

    <p>Click the button to get your coordinates.</p>

    <button onclick = "getLocation()">Try It</button>

    <p id = "demo"></p>

    <script>
    var x = document.getElementById("demo");

    function getLocation() {
        if (navigator.geolocation) {
            navigator.geolocation.getCurrentPosition(showPosition);
        } else { 
            x.innerHTML = "Geolocation is not supported by this browser.";
        }
    }

    function showPosition(position) {

        x.innerHTML = "Latitude: " + position.coords.latitude + 
        "<br>Longitude: " + position.coords.longitude;


        var geocoder;
        geocoder = new google.maps.Geocoder();
        var latlng = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);

        geocoder.geocode({'latLng': latlng}, function(results, status) {
        if (status == google.maps.GeocoderStatus.OK) {
                if (results[0]) {
                    var add= results[0].formatted_address ;
                    var  value=add.split(",");

                    count=value.length;
                    country=value[count-1];
                    state=value[count-2];
                    city=value[count-3];
                    alert("city name is: " + city);
                }
                else  {
                    alert("address not found");
                }
        }
         else {
            alert("Geocoder failed due to: " + status);
        }
    }

    </script>

    </body>
    </html>

Я читал об API геолокации в некоторых статьях. И я не уверен, что это действительно необходимо, поскольку я не использую здесь карты. Мне просто нужно только текущее название города

в вашей функции showPosition вы вызываете new google.maps.Geocoder(), если я знаю, что в javascript нет глобальной переменной google

khofaai 04.09.2018 10:39

Так. Что вы предлагаете для разрешения

Nagendra Bhat 04.09.2018 10:51

вам необходимо реализовать google map, чтобы вы могли получить доступ к объекту google

khofaai 04.09.2018 11:56
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
3
34
1

Ответы 1

Это зависит от вашей цели. Если вы хотите использовать это приложение на небольшой территории, лучше жестко закодировать название города и широту / долготу в базе данных, после чего вы можете получить текущую широту / долготу и проверить совпадения в своей базе данных на предмет точности в процентах. . Это зависит от ваших потребностей.

Хорошо. Спасибо за ответ. Итак, как я могу сделать процентную точность после получения широты / долготы текущей позиции

Nagendra Bhat 04.09.2018 10:54

Если вы получили широту / долгую позицию из своей базы данных, вы можете проверить их на диапазон. пусть lat / long из базы данных - это lat1, long 1 и lat / long для текущей позиции lat и long. тогда вы можете проверить соответствие каждого из lat1, long1 из базы данных с помощью (lat> = lat1-0.01 && lat <= lat1 + 0.01 && long> = long1-0.01 && long <= long1 + 0.01). вы можете изменить десятичное значение для вашей точности

Senthaalan 04.09.2018 14:38

Другие вопросы по теме