要求
返回一個(gè)數(shù)組册踩,其內(nèi)容是把原數(shù)組中對(duì)應(yīng)元素的平均海拔轉(zhuǎn)換成其對(duì)應(yīng)的軌道周期.
原數(shù)組中會(huì)包含格式化的對(duì)象內(nèi)容施禾,像這樣{name: 'name', avgAlt: avgAlt}.
至于軌道周期怎么求,戳這里 on wikipedia (不想看英文的話可以自行搜索以軌道高度計(jì)算軌道周期的公式).
求得的值應(yīng)該是一個(gè)與其最接近的整數(shù)表制,軌道是以地球?yàn)榛鶞?zhǔn)的.
地球半徑是 6367.4447 kilometers, 地球的GM值是 398600.4418, 圓周率為Math.PI
注意
向下取整:Math.floor()
向上取整:Math.round()
解答
function orbitalPeriod(arr) {
var pi=Math.PI;
var GM = 398600.4418;
var earthRadius = 6367.4447;
var r;
var T;//周期
for(i=0;i<arr.length;i++){
r=arr[i].avgAlt+earthRadius;
T=2*pi*Math.sqrt(Math.pow(r,3)/GM);
delete arr[i].avgAlt;
arr[i].orbitalPeriod=Math.round(T);
}
return arr;
}
orbitalPeriod([{name: "iss", avgAlt: 413.6}, {name: "hubble", avgAlt: 556.7}, {name: "moon", avgAlt: 378632.553}]);