手记

JS中的关于实现海拔转换为轨道周期的实例

返回一个数组,其内容是把原数组中对应元素的平均海拔转换成其对应的轨道周期.

原数组中会包含格式化的对象内容,像这样 {name: 'name', avgAlt: avgAlt}.

至于轨道周期怎么求,戳这里 on wikipedia (不想看英文的话可以自行搜索以轨道高度计算轨道周期的公式).

求得的值应该是一个与其最接近的整数,轨道是以地球为基准的.

地球半径是 6367.4447 kilometers, 地球的GM值是 398600.4418, 圆周率为Math.PI

code:

function orbitalPeriod(arr) {//公式GMm/R^2=mrω^2 ω=2π/T,R=r+h,所以T=2π(r+h)·sqr((r+h)/GM)。
  var GM = 398600.4418;
  var earthRadius = 6367.4447;
  for(var i=0;i<arr.length;i++){
    var R = (arr[i].avgAlt + earthRadius);
    var T = R*2*Math.PI*Math.sqrt(R/GM);
    delete arr[i].avgAlt;
    arr[i].orbitalPeriod=Math.round(T);
  }
  return arr;
}

orbitalPeriod([{name : "sputnik", avgAlt : 35873.5553}]);
1人推荐
随时随地看视频
慕课网APP