如何在Javascript或jQuery中执行cos和sin等数学运算?

时间:2010-08-28 11:30:47

标签: javascript jquery dhtml

我有一个searchlocationNear函数,我传递地理编码数据,我需要根据经纬度值计算距离,但在距离的警报函数期间显示未定义是他们的代码有任何问题。

function searchLocationsNear(center) {
     var radius = document.getElementById('radiusSelect').value;
     lat1=center.lat();
     alert(lat1);
     lng1=center.lng();
     alert(lng1);
     var distance1=( 3959 * acos( cos( radians(37) ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(-122) ) + sin( radians(37) ) * sin( radians( lat ) ) ) ) ;
     alert(distance1);
     var searchUrl = 'example.xml';
     GDownloadUrl(searchUrl, function(data) {
       var xml = GXml.parse(data);
       var markers = xml.documentElement.getElementsByTagName('marker');
       map.clearOverlays();

       var sidebar = document.getElementById('sidebar');
       sidebar.innerHTML = '';
       if (markers.length == 0) {
         sidebar.innerHTML = 'No results found.';
         map.setCenter(new GLatLng(40, -100), 4);
         return;
       }

3 个答案:

答案 0 :(得分:3)

我不认为代码应该显示任何内容,因为您使用的是未定义的变量。在JavaScript中,所有数学函数都在the Math object下。所以使用Math.sin等等。

如果Google的地图库已经包含用于计算两点之间距离的内容,那么也可能值得一试。这听起来像他们肯定会包含的东西。

答案 1 :(得分:2)

使用Math对象:Math.sin()Math.cos()

答案 2 :(得分:1)

您可以查看包含三角函数的Math object