如何根据十进制表示范围限制经纬度?

How can I limit longitude and latitude according to their decimal representation range?

我在写一个地理定位相关的软件,遇到了一个问题: 在某些时候,我要求用户输入特定的纬度和经度坐标 - 十进制。我的问题是如何限制这些字段,以便用户无法输入不可能输入的数字?

换句话说——纬度和经度的范围是多少?在搜索这个主题时,我看到了一个以度为单位的答案,但我对十进制表示感兴趣,并且不确定这里的正确计算。

谢谢!

  • 有效纬度为 +90 到 -90 度。
  • 有效经度为+180度到-180度(但它是一个角度,所以+/-180是同一个地方,任何值都可以表示有效经度)。

https://developers.google.com/maps/documentation/javascript/coordinates中定义的范围是:

纬度:(大约)-85 到 85
经度: -180 到 180

您可以使用 HTML5-number-input:

来限制它

<input type="number" name="longitude" min="-180" max="180" step=".000001">
<input type="number" name="latitude" min="-85" max="85" step=".000001">