<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title></title></head><body> <form method="post" action="度轉換成為度分秒.aspx" id="form1"><div class="aspNetHidden"><input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKLTEzNDM3NzkxOWRkZmE4WL2w+JlQegd1eNmZP55gz1SQd6rQpL1dSpLQJWg=" /></div> <div> <script type="text/ecmascript"> function formatDegree(value) { ///<summary>將度轉換成為度分秒</summary> value = Math.abs(value); var v1 = Math.floor(value);//度 var v2 = Math.floor((value - v1) * 60);//分 var v3 = Math.round((value - v1) * 3600 % 60);//秒 return v1 + '°' + v2 + '\'' + v3 + '"'; }; function DegreeConvertBack(value) { ///<summary>度分秒轉換成為度</summary> var du = value.split("°")[0]; var fen = value.split("°")[1].split("'")[0]; var miao = value.split("°")[1].split("'")[1].split('"')[0]; return Math.abs(du) + "." + (Math.abs(fen)/60 + Math.abs(miao)/3600); } alert("度轉化成為度分秒,這個會靠成精度丟失 從第三位小數開始丟失" +DegreeConvertBack( formatDegree("121.31123456"))); </script> </div> </form></body></html>
1.度分轉換成度分秒會造成精度丟失... 主要是秒部分丟失.