Haversine formula: Difference between revisions

→‎{{header|JavaScript}}: add implementation
(add ooRexx (translated from REXX))
(→‎{{header|JavaScript}}: add implementation)
Line 684:
{{out}}
<pre>2887.2599506071106</pre>
=={{header|JavaScript}}==
{{trans|Java}}
function haversine() {
var radians = Array.prototype.map.call(arguments, function(deg) { return deg/180.0 * Math.PI; });
var lat1 = radians[0], lon1 = radians[1], lat2 = radians[2], lon2 = radians[3];
var R = 6372.8; // km
var dLat = lat2 - lat1;
var dLon = lon2 - lon1;
var a = Math.sin(dLat / 2) * Math.sin(dLat /2) + Math.sin(dLon / 2) * Math.sin(dLon /2) * Math.cos(lat1) * Math.cos(lat2);
var c = 2 * Math.asin(Math.sqrt(a));
return R * c;
}
console.log(haversine(36.12, -86.67, 33.94, -118.40));
</lang>
{{out}}
<pre>2887.2599506071124</pre>
 
=={{header|jq}}==
1,480

edits