地図蔵 ▷ 2012年までの記事「JavaScript の盲点」

JavaScript の盲点

(2012年12月21日)

緯度や経度のデータを浮動小数点から度分秒表記に変換したものの、

if (latitude <= 0) { // latitude が 0 以下の場合は true

などとコードを記述していました。しかしこれでは(-1.0 や -32.98 などの数値では問題ないものの)-0.987 や -0.0002 といった 0 から -1 までの負の小数値の場合に機能しません。南緯 0.0002 を北緯 0.0002 と計算してしまいます。なんて迂闊。

ギニア湾沖

緊急避難として、Latitude, Longitude 値のマイナス符号の有無で条件分岐しました。
正負判断の関数は存在しないようですので。たぶん。

それで改めて正負をまたぐ数値の動作を確認していましたら、緯度 0、経度 0 の地点をズームインすると「Engineered Products」と書いてある(右)。
なんのことやら。洒落っ気でしょうか。
また、API や maps.google.com で「0.00, 0.00」などと検索すると Latitude= -33.724340, Longitude= -15.996094 の南太平洋が返されますが、これにも何か根拠が隠されているような気がしてなりません。

追記:翌22日、Engineered Products の記載が消えた。21日は以下のようになっていた。
0,0

摩訶不思議。