Итак, я пытаюсь создать компасное приложение для Fitbit Ionic, оно работает, но этот кусок кода злит меня. Я знаю, что есть способ сократить это, но я не могу понять, как. Предполагается, что нужно взять целое число и сказать мне, каково соответствующее кардинальное направление.
Это выглядело бы намного лучше, если бы это, если бы утверждение могло быть сжатым. Любые советы или решения приветствуются.
geolocation.watchPosition(function(position) {
var headingDir;
var headingDeg;
headingDeg = position.coords.heading ? position.coords.heading.toFixed(2) : 0
//This long boi
if (headingDeg >= 22.5 & headingDeg < 67.5) {
headingDir = "NE";
} else if (headingDeg >= 67.5 & headingDeg < 112.5) {
headingDir = "E"
} else if (headingDeg >= 112.5 & headingDeg < 157.5) {
headingDir = "SE"
} else if (headingDeg >= 157.5 & headingDeg < 202.5) {
headingDir = "S"
} else if (headingDeg >= 202.5 & headingDeg < 247.5) {
headingDir = "SW"
} else if (headingDeg >= 247.5 & headingDeg < 292.5) {
headingDir = "W"
} else if (headingDeg >= 292.5 & headingDeg < 337.5) {
headingDir = "NW"
} else {
headingDir = "N"
};
})