如 23:北偏东23° 89 :东偏北1° export const angleText = (angle) => { let p = Number.parseInt(angle); let text = ''; let d8 = ['北', '东北','东', '东南', '南', '西南', '西', '西北']; let d4 = ["北", "东", "南", "西"]; if (p % 45 == 0) { text = d8[p / 45]; } else { let directionValue = p / 90; let roundDirect = directionValue.toFixed(0); let offsetAngle = p - roundDirect * 90; roundDirect = roundDirect % 4; let index = Number(roundDirect) + Number(Math.abs(offsetAngle) / offsetAngle); if (index <= 0) { index += 4 } if (index > 3) { index -= 4 } let offsetDirect = d4[index]; text = d4[roundDirect] + ' 偏' + offsetDirect + ' ' + Math.abs(offsetAngle) + '°'; } return text; }